diff --git a/HISTORY.md b/HISTORY.md index 37a14739..e7c37078 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -1,7 +1,11 @@ # vis.js history http://visjs.org -## UNREALEASED, version 4.1.1 +## not-yet-released, version 4.1.1-SNAPSHOT + +### Timeline + +- Improved function `fit()` to take into account the actual width of items. ### Graph2D @@ -22,14 +26,14 @@ http://visjs.org - Fixed #859, images now resize again when they are loaded. - Fixed dynamic edges not correctly handling non-existent nodes. - Accepted pull from @killerDJO for fixing selected and hover colors for edges. -- Fixed bug with rightmouse button, scroll center and popup positions using the wrong coordinates. +- Fixed bug with right mouse button, scroll center and popup positions using the wrong coordinates. - Fixed click to use. - Fixed getConnectedEdges method. - Fixed clustering bug. - Added getNodesInCluster method. -- Renamed editNodeMode to editNode, editNodeMode now give a deprication log message. +- Renamed editNodeMode to editNode, editNodeMode now give a deprecation log message. - Added multiselect to the docs. -- Removed depricated dynamic entree, allow any smooth curve style for hierarchical layout. +- Removed deprecated dynamic entree, allow any smooth curve style for hierarchical layout. - Fixed bug with the moveTo and getViewPosition methods. - Fixed #861, brokenImage only working for one node if nodes have the same image. - Fixed hoverNode and blurNode events and added them to the docs. diff --git a/dist/vis.map b/dist/vis.map index 1a0868f3..7e99025e 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","Images","dotparser","gephiParser","convertDot","input","DOTToGraph","convertGephi","options","parseGephi","Graph","Error","moment","hammer","Hammer","data","conversion","props","dot","width","height","line","undefined","start","prototype","isVisible","range","interval","end","redraw","dom","box","document","createElement","content","className","appendChild","dirty","parent","parentNode","foreground","background","axis","displayed","_updateContents","_updateTitle","_updateDataAttributes","_updateStyle","selected","offsetHeight","offsetWidth","_repaintDeleteButton","show","hide","removeChild","repositionX","toScreen","align","left","style","repositionY","orientation","item","top","bottom","itemSetHeight","itemSet","lineHeight","select","unselect","setData","groupChanged","group","_moveToGroup","setParent","anchor","editable","remove","deleteButton","me","title","on","event","stopPropagation","removeFromDataSet","element","template","itemData","itemsData","get","changed","_contentToString","Element","innerHTML","type","removeAttribute","dataAttributes","length","attributes","Array","isArray","Object","keys","i","name","value","setAttribute","removeCssText","addCssText","outerHTML","window","propagating","preventDefault","__WEBPACK_AMD_DEFINE_FACTORY__","__WEBPACK_AMD_DEFINE_ARRAY__","__WEBPACK_AMD_DEFINE_RESULT__","apply","_firstTarget","_processing","split","events","match","propagatedHandler","srcEvent","_handled","stopped","firstTarget","elem","_handlers","_options","Manager","PropagatingHammer","extend","_on","_off","off","_emit","emit","_destroy","destroy","pointerType","isFirst","target","isFinal","handler","forEach","push","filter","h","eventType","exportName","setTimeoutContext","fn","timeout","context","setTimeout","bindFn","invokeArrayArg","arg","each","obj","iterator","hasOwnProperty","dest","src","merge","inherit","child","base","properties","childP","baseP","create","constructor","_super","arguments","boolOrFn","val","args","TYPE_FUNCTION","ifUndefined","val1","val2","addEventListeners","types","splitStr","addEventListener","removeEventListeners","removeEventListener","hasParent","node","inStr","str","find","indexOf","trim","inArray","findByKey","toArray","slice","uniqueArray","key","sort","results","values","a","b","prefixed","property","prefix","prop","camelProp","toUpperCase","VENDOR_PREFIXES","uniqueId","_uniqueId","getWindowForElement","doc","ownerDocument","defaultView","parentWindow","Input","manager","callback","self","inputTarget","domHandler","ev","enable","init","createInputInstance","Type","inputClass","SUPPORT_POINTER_EVENTS","PointerEventInput","SUPPORT_ONLY_TOUCH","TouchInput","SUPPORT_TOUCH","TouchMouseInput","MouseInput","inputHandler","pointersLen","pointers","changedPointersLen","changedPointers","INPUT_START","INPUT_END","INPUT_CANCEL","session","computeInputData","recognize","prevInput","pointersLength","firstInput","simpleCloneInputData","firstMultiple","offsetCenter","center","getCenter","timeStamp","now","deltaTime","angle","getAngle","distance","getDistance","computeDeltaXY","offsetDirection","getDirection","deltaX","deltaY","scale","getScale","rotation","getRotation","computeIntervalInputData","offset","offsetDelta","prevDelta","x","y","velocity","velocityX","velocityY","direction","last","lastInterval","COMPUTE_INTERVAL","v","getVelocity","abs","clientX","round","clientY","DIRECTION_NONE","DIRECTION_LEFT","DIRECTION_RIGHT","DIRECTION_UP","DIRECTION_DOWN","p1","p2","PROPS_XY","Math","sqrt","atan2","PI","PROPS_CLIENT_XY","evEl","MOUSE_ELEMENT_EVENTS","evWin","MOUSE_WINDOW_EVENTS","allow","pressed","POINTER_ELEMENT_EVENTS","POINTER_WINDOW_EVENTS","store","pointerEvents","SingleTouchInput","evTarget","SINGLE_TOUCH_TARGET_EVENTS","SINGLE_TOUCH_WINDOW_EVENTS","started","normalizeSingleTouches","all","touches","changedTouches","concat","TOUCH_TARGET_EVENTS","targetIds","getTouches","allTouches","INPUT_MOVE","identifier","targetTouches","changedTargetTouches","touch","mouse","TouchAction","set","cleanTouchActions","actions","TOUCH_ACTION_NONE","hasPanX","TOUCH_ACTION_PAN_X","hasPanY","TOUCH_ACTION_PAN_Y","TOUCH_ACTION_MANIPULATION","TOUCH_ACTION_AUTO","Recognizer","defaults","state","STATE_POSSIBLE","simultaneous","requireFail","stateStr","STATE_CANCELLED","STATE_ENDED","STATE_CHANGED","STATE_BEGAN","directionStr","getRecognizerByNameIfManager","otherRecognizer","recognizer","AttrRecognizer","PanRecognizer","pX","pY","PinchRecognizer","PressRecognizer","_timer","_input","RotateRecognizer","SwipeRecognizer","TapRecognizer","pTime","pCenter","count","recognizers","preset","handlers","touchAction","toggleCssProps","add","recognizeWith","requireFailure","cssProps","triggerDomEvent","gestureEvent","createEvent","initEvent","gesture","dispatchEvent","TEST_ELEMENT","Date","MOBILE_REGEX","test","navigator","userAgent","INPUT_TYPE_TOUCH","INPUT_TYPE_PEN","INPUT_TYPE_MOUSE","INPUT_TYPE_KINECT","DIRECTION_HORIZONTAL","DIRECTION_VERTICAL","DIRECTION_ALL","MOUSE_INPUT_MAP","mousedown","mousemove","mouseup","button","which","POINTER_INPUT_MAP","pointerdown","pointermove","pointerup","pointercancel","pointerout","IE10_POINTER_TYPE_ENUM",2,3,4,5,"MSPointerEvent","removePointer","eventTypeNormalized","toLowerCase","replace","isTouch","storeIndex","pointerId","splice","SINGLE_TOUCH_INPUT_MAP","touchstart","touchmove","touchend","touchcancel","TOUCH_INPUT_MAP","inputEvent","inputData","isMouse","PREFIXED_TOUCH_ACTION","NATIVE_TOUCH_ACTION","TOUCH_ACTION_COMPUTE","compute","update","getTouchAction","join","preventDefaults","prevented","hasNone","preventSrc","STATE_RECOGNIZED","STATE_FAILED","dropRecognizeWith","dropRequireFailure","index","hasRequireFailures","canRecognizeWith","withState","tryEmit","canEmit","inputDataClone","process","reset","attrTest","optionPointers","isRecognized","isValid","threshold","directionTest","hasMoved","inOut","time","validPointers","validMovement","validTime","clearTimeout","taps","posThreshold","validTouchTime","failTimeout","validInterval","validMultiTap","tapCount","VERSION","domEvents","userSelect","touchSelect","touchCallout","contentZooming","userDrag","tapHighlightColor","STOP","FORCED_STOP","stop","force","curRecognizer","existing","Tap","Pan","Swipe","Pinch","Rotate","Press","__webpack_amd_options__","uuid","isNumber","object","Number","recursiveDOMDelete","DOMobject","hasChildNodes","firstChild","giveRange","min","max","total","isString","String","isDate","ASPDateRegex","exec","isNaN","parse","randomUUID","v4","assignAllKeys","fillIfDefined","allowDeletion","protoExtend","other","selectiveExtend","selectiveDeepExtend","TypeError","deepExtend","selectiveNotDeepExtend","equalArray","len","convert","Boolean","valueOf","isMoment","toDate","getType","toISOString","copyAndExtendArray","arr","newValue","newArr","copyArray","getAbsoluteLeft","getBoundingClientRect","getAbsoluteTop","addClassName","classes","removeClassName","array","updateProperty","action","listener","useCapture","attachEvent","detachEvent","returnValue","getTarget","srcElement","nodeType","e","option","asBoolean","defaultValue","asNumber","asString","asSize","asElement","hexToRGB","hex","shorthandRegex","r","g","result","parseInt","overrideOpacity","color","opacity","rgb","substr","RGBToHex","red","green","blue","toString","parseColor","isValidRGB","map","isValidHex","hsv","hexToHSV","lighterColorHSV","s","darkerColorHSV","darkerColorHex","HSVToHex","lighterColorHex","border","highlight","hover","RGBToHSV","minRGB","maxRGB","d","hue","saturation","cssUtil","cssText","styles","parts","currentStyles","newStyles","removeStyles","HSVToRGB","floor","f","q","t","isOk","isValidRGBA","rgba","selectiveBridgeObject","fields","referenceObject","objectTo","bridgeObject","mergeOptions","mergeTarget","enabled","binarySearchCustom","orderedItems","searchFunction","field","field2","maxIterations","iteration","low","high","middle","searchResult","binarySearchValue","sidePreference","prevValue","nextValue","easingFunctions","linear","easeInQuad","easeOutQuad","easeInOutQuad","easeInCubic","easeOutCubic","easeInOutCubic","easeInQuart","easeOutQuart","easeInOutQuart","easeInQuint","easeOutQuint","easeInOutQuint","global","utils_hooks__hooks","hookCallback","setHookCallback","res","hasOwnProp","create_utc__createUTC","format","locale","strict","createLocalOrUTC","utc","defaultParsingFlags","empty","unusedTokens","unusedInput","overflow","charsLeftOver","nullInput","invalidMonth","invalidFormat","userInvalidated","iso","getParsingFlags","_pf","valid__isValid","_isValid","flags","_d","getTime","_strict","bigHour","valid__createInvalid","NaN","copyConfig","to","from","_isAMomentObject","_i","_f","_l","_tzm","_isUTC","_offset","_locale","momentProperties","Moment","config","updateInProgress","updateOffset","toInt","argumentForCoercion","coercedNumber","isFinite","ceil","compareArrays","array1","array2","dontConvert","lengthDiff","diffs","Locale","normalizeLocale","chooseLocale","names","j","next","loadLocale","oldLocale","locales","globalLocale","_abbr","code","locale_locales__getSetGlobalLocale","locale_locales__getLocale","defineLocale","abbr","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","sign","addFormatToken","token","padded","ordinal","func","formatTokenFunctions","localeData","removeFormattingTokens","makeFormatFunction","formattingTokens","Function","formatMoment","expandFormat","formatFunctions","invalidDate","replaceLongDateFormatTokens","longDateFormat","localFormattingTokens","lastIndex","addRegexToken","regex","strictRegex","regexes","isStrict","getParseRegexForToken","RegExp","unescapeFormat","matched","p3","p4","addParseToken","tokens","addWeekParseToken","_w","addTimeToArrayFromToken","_a","daysInMonth","year","month","UTC","getUTCDate","localeMonths","_months","localeMonthsShort","_monthsShort","localeMonthsParse","monthName","_monthsParse","_longMonthsParse","_shortMonthsParse","months","monthsShort","setMonth","dayOfMonth","monthsParse","date","getSetMonth","getDaysInMonth","checkOverflow","MONTH","DATE","YEAR","HOUR","MINUTE","SECOND","MILLISECOND","_overflowDayOfYear","warn","msg","suppressDeprecationWarnings","console","deprecate","firstTime","msgWithStack","deprecateSimple","deprecations","configFromISO","l","string","from_string__isoRegex","isoDates","isoTimes","matchOffset","configFromStringAndFormat","configFromString","aspNetJsonRegex","createFromInputFallback","createDate","M","ms","setFullYear","createUTCDate","setUTCFullYear","daysInYear","isLeapYear","getIsLeapYear","weekOfYear","firstDayOfWeek","firstDayOfWeekOfYear","adjustedMoment","daysToDayOfWeek","day","local__createLocal","week","dayOfYear","localeWeek","_week","dow","doy","localeFirstDayOfWeek","localeFirstDayOfYear","getSetWeek","getSetISOWeek","dayOfYearFromWeeks","weekday","daysToAdd","getUTCDay","getSetDayOfYear","clone","startOf","currentDateArray","_useUTC","getUTCFullYear","getUTCMonth","getFullYear","getMonth","getDate","configFromArray","currentDate","yearToUse","dayOfYearFromWeekInfo","_dayOfYear","_nextDay","setUTCMinutes","getUTCMinutes","w","weekYear","temp","GG","W","E","gg","ISO_8601","parsedInput","skipped","stringLength","totalParsedInputLength","meridiemFixWrap","_meridiem","hour","meridiem","isPm","meridiemHour","isPM","configFromStringAndArray","tempConfig","bestMoment","scoreToBeat","currentScore","score","configFromObject","minute","second","millisecond","createFromConfig","preparse","configFromInput","isUTC","pickBy","moments","Duration","duration","years","quarters","quarter","weeks","days","hours","minutes","seconds","milliseconds","_milliseconds","_days","_data","_bubble","isDuration","separator","utcOffset","offsetFromString","matches","chunk","chunkOffset","cloneWithOffset","model","diff","setTime","local","getDateOffset","getTimezoneOffset","getSetOffset","keepLocalTime","localAdjust","_changeInProgress","add_subtract__addSubtract","create__createDuration","getSetZone","setOffsetToUTC","setOffsetToLocal","subtract","setOffsetToParsedOffset","hasAlignedHourOffset","isDaylightSavingTime","isDaylightSavingTimeShifted","isLocal","isUtcOffset","isUtc","ret","diffRes","aspNetRegex","create__isoRegex","parseIso","momentsDifference","inp","parseFloat","positiveMomentsDifference","isAfter","isBefore","createAdder","period","dur","tmp","isAdding","moment_calendar__calendar","sod","calendar","inputMs","endOf","isBetween","isSame","absFloor","asFloat","delta","that","zoneDelta","monthDiff","anchor2","adjust","wholeMonthDiff","moment_format__toISOString","inputString","defaultFormat","postformat","withoutSuffix","humanize","fromNow","toNow","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","charAt","localeMeridiem","isLower","millisecond__milliseconds","getZoneAbbr","getZoneName","moment__createUnix","moment__createInZone","parseZone","locale_calendar__calendar","_calendar","_longDateFormat","_invalidDate","_ordinal","preParsePostFormat","relative__relativeTime","isFuture","_relativeTime","pastFuture","locale_set__set","_ordinalParseLenient","_ordinalParse","source","lists__get","setter","list","out","lists__listMonths","lists__listMonthsShort","lists__listWeekdays","lists__listWeekdaysShort","lists__listWeekdaysMin","duration_abs__abs","mathAbs","duration_add_subtract__addSubtract","duration_add_subtract__add","duration_add_subtract__subtract","bubble","daysToYears","yearsToDays","as","duration_as__valueOf","makeAs","alias","duration_get__get","makeGetter","substituteTimeAgo","relativeTime","duration_humanize__relativeTime","posNegDuration","thresholds","duration_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","lang","isoWeekYear","getSetDayOfMonth","invalidWeekday","defaultLocaleWeekdays","defaultLocaleWeekdaysShort","defaultLocaleWeekdaysMin","_isPm","defaultLocaleMeridiemParse","getSetHour","getSetMinute","getSetSecond","getSetMillisecond","momentPrototype__proto","toJSON","isoWeek","isoWeeks","isoWeeksInYear","isDST","isDSTShifted","zoneAbbr","zoneName","dates","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","duration_get__milliseconds","duration_prototype__proto","toIsoString","version","invalid","relativeTimeThreshold","_moment","webpackPolyfill","paths","children","webpackContext","req","resolve","buf","ii","oct","_hexToByte","unparse","bth","_byteToHex","v1","clockseq","_clockseq","msecs","nsecs","_lastNSecs","dt","_lastMSecs","tl","tmh","_nodeId","n","rnds","random","rng","_rng","globalVar","crypto","getRandomValues","_rnds8","Uint8Array","_rnds","_seedBytes","prepareElements","JSONcontainer","elementType","redundant","used","cleanupElements","getSVGElement","svgContainer","shift","createElementNS","getDOMElement","DOMContainer","insertBefore","drawPoint","labelObj","point","drawPoints","setAttributeNS","size","label","xOffset","yOffset","textContent","drawBar","rect","_fieldId","fieldId","_type","_subscribers","setOptions","queue","_queue","subscribers","subscribe","unsubscribe","_trigger","params","senderId","subscriber","addedIds","_addItem","updatedIds","updatedData","addOrUpdate","_updateItem","ids","firstType","returnType","allowedValues","itemId","_getItem","order","_sort","_filterFields","getIds","getDataSet","mappedItems","filteredItem","av","bv","removedId","removedIds","_remove","clear","maxField","itemField","minField","distinct","fieldType","exists","raw","converted","JSON","stringify","delay","Infinity","_timeout","_extended","_flushIfNeeded","flush","methods","original","method","entry","_ids","_onEvent","refresh","newIds","added","removed","viewOptions","getArguments","defaultFilter","dataSet","updated","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","dataTable","dataPoints","colX","colY","colZ","colValue","colFilter","xMin","xStep","xMax","yMin","yStep","yMax","zMin","zStep","zMax","valueMin","valueMax","xBarWidth","yBarWidth","colorAxis","colorGrid","colorDot","colorDotBorder","getMouseX","getMouseY","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","getNumberOfColumns","getNumberOfRows","counter","column","getDistinctValues","distinctValues","getColumnRange","minMax","_dataInitialize","rawData","_onChange","dataFilter","setOnLoadCallback","withBars","defaultXBarWidth","dataX","defaultYBarWidth","dataY","xRange","defaultXMin","defaultXMax","defaultXStep","yRange","defaultYMin","defaultYMax","defaultYStep","zRange","defaultZMin","defaultZMax","defaultZStep","valueRange","defaultValueMin","defaultValueMax","_getDataPoints","sortNumber","dataMatrix","xIndex","yIndex","trans","screen","pointRight","pointTop","pointCross","position","noCanvas","fontWeight","padding","onmousedown","_onMouseDown","ontouchstart","_onTouchStart","onmousewheel","_onWheel","ontooltip","_onTooltip","onkeydown","setSize","_resizeCanvas","clientHeight","animationStart","slider","play","animationStop","_resizeCenter","setCameraPosition","pos","horizontal","vertical","setArmRotation","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","textAlign","textBaseline","fillText","visible","setValues","setPlayInterval","onchange","getIndex","selectValue","setOnChangeCallback","lineStyle","getLabel","getSelectedValue","prettyStep","text","xText","yText","zText","xMin2d","xMax2d","gridLenX","gridLenY","textMargin","armAngle","H","S","V","R","G","B","C","Hi","X","cross","topSideVisible","zAvg","transBottom","dist","sortDepth","aDiff","bDiff","crossproduct","crossProduct","radius","arc","surface","corners","xWidth","yWidth","surfaces","avg","transCenter","leftButtonDown","_onMouseUp","touchDown","startMouseX","startMouseY","startStart","startEnd","startArmRotation","cursor","onmousemove","_onMouseMove","onmouseup","diffX","diffY","horizontalNew","verticalNew","snapAngle","snapValue","parameters","boundingRect","mouseX","mouseY","tooltipTimeout","_hideTooltip","dataPoint","_dataPointFromXY","_showTooltip","ontouchmove","_onTouchMove","ontouchend","_onTouchEnd","wheelDelta","detail","oldLength","newLength","_insideTriangle","triangle","bs","cs","distMax","closestDataPoint","closestDist","triangle1","triangle2","distX","distY","borderRadius","boxShadow","borderLeft","contentWidth","contentHeight","dotWidth","dotHeight","mixin","_callbacks","once","removeListener","removeAllListeners","callbacks","cb","listeners","hasListeners","sub","sum","armLocation","armRotation","armLength","cameraLocation","cameraRotation","calculateCameraOrientation","rot","graph","onLoadCallback","loadInBackground","isLoaded","getLoadedProgress","getColumn","getValues","getValue","dataView","progress","prev","bar","MozBorderRadius","slide","onclick","togglePlay","onChangeCallback","playTimeout","playInterval","playLoop","setIndex","playNext","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","maxHeight","minHeight","_create","body","domProps","emitter","bind","hiddenDates","timeAxis","_toScreen","toGlobalScreen","_toGlobalScreen","toTime","_toTime","toGlobalTime","_toGlobalTime","timeAxis2","currentTime","groupsData","getEventProperties","oncontextmenu","configurator","Configurator","configureOptions","setGroups","setItems","_redraw","Core","Validator","printStyle","allOptions","markDirty","refreshItems","errorFound","validate","selection","getSelection","setSelection","newDataSet","initialLoad","dataRange","_getDataRange","setWindow","animation","fit","focus","getItemRange","dataset","minItem","maxStartItem","maxEndItem","centerContainer","itemFromTarget","groupFromTarget","customTime","customTimeFromTarget","snap","snappedTime","what","labelSet","groupId","pageX","pageY","showCurrentTime","backgroundVertical","warned","current","substring","currentTimeTimer","setCurrentTime","getCurrentTime","_isResized","resized","_previousWidth","_previousHeight","deltaDifference","scaleOffset","startToFront","endToFront","moveable","zoomable","zoomMin","zoomMax","animationTimer","_onDragStart","_onDrag","_onDragEnd","_onMouseWheel","_onTouch","_onPinch","validateDirection","getPointer","byUser","finalStart","finalEnd","_cancelAnimation","initStart","initEnd","easingName","easingFunction","initTime","anyChanged","dragging","ease","done","_applyRange","updateHiddenDates","newStart","newEnd","getRange","totalHidden","previousDelta","allowDragging","getHiddenDurationBetween","diffRange","safeStart","snapAwayFromHidden","safeEnd","pointer","pointerDate","_pointerToDate","zoom","centerDate","hiddenDuration","hiddenDurationBefore","getHiddenDurationBefore","hiddenDurationAfter","move","onTouch","isTouching","onRelease","isReleasing","offTouch","offRelease","convertHiddenOptions","repeat","dateItem","totalRange","pixelTime","startDate","endDate","runUntil","dayOffset","removeDuplicates","startHidden","isHidden","endHidden","rangeStart","rangeEnd","hidden","safeDates","printDates","stepOverHiddenDates","timeStep","previousTime","stepInHidden","currentValue","switchedYear","switchedMonth","switchedDay","correctTimeForHidden","totalDuration","partialDuration","accumulatedHiddenDuration","getAccumulatedHiddenDuration","newTime","timeOffset","requiredDuration","previousPoint","correctionEnabled","hammerUtil","Activator","onMouseWheel","isActive","backgroundHorizontal","leftContainer","rightContainer","shadowTop","shadowBottom","shadowTopLeft","shadowBottomLeft","shadowTopRight","shadowBottomRight","_redrawTimer","scrollTop","scrollTopMin","customTimes","redrawCount","clickToUse","activator","_initAutoResize","component","configure","appliedOptions","setModuleOptions","active","_stopAutoResize","setCustomTime","getCustomTime","addCustomTime","timestamp","some","removeCustomTime","getVisibleItems","getWindow","borderRootHeight","borderRootWidth","autoHeight","containerHeight","centerWidth","_updateScrollTop","visibilityTop","visibilityBottom","visibility","MAX_REDRAWS","repaint","_startAutoResize","_onResize","lastWidth","lastHeight","watchTimer","setInterval","initialScrollTop","oldScrollTop","_getScrollTop","newScrollTop","_setScrollTop","groupOrder","selectable","multiselect","updateTime","updateGroup","onAdd","onUpdate","onMove","onRemove","onMoving","itemOptions","itemListeners","_onAdd","_onUpdate","_onRemove","groupListeners","_onAddGroups","_onUpdateGroups","_onRemoveGroups","groupIds","stackDirty","touchParams","UNGROUPED","BACKGROUND","_updateUngrouped","backgroundGroup","_onSelectItem","_onMultiSelectItem","_onAddItem","addCallback","rawVisibleItems","visibleItems","_deselect","_orderGroups","visibleInterval","zoomed","lastVisibleInterval","restack","firstGroup","_firstGroup","firstMargin","nonFirstMargin","groupMargin","groupResized","firstGroupIndex","firstGroupId","ungrouped","_getGroupId","getLabelSet","oldItemsData","getItems","_order","getGroups","removeItem","_getType","_removeItem","groupData","groupOptions","oldGroupId","oldSubGroupId","subgroup","oldGroup","_constructByEndArray","endArray","dragLeftItem","dragRightItem","itemProps","initialX","dragLeft","dragRight","ctrlKey","metaKey","_onDragStartAddItem","xAbs","newItem","offsetLeft","initial","initialStart","initialEnd","changes","shiftKey","oldSelection","newSelection","_getItemRange","_item","itemSetFromTarget","subgroups","subgroupIndex","subgroupOrderer","subgroupOrder","byStart","byEnd","checkRangedItems","inner","marker","getLabelWidth","markerHeight","lastMarkerHeight","limitSize","customOrderedItems","_updateVisibleItems","nostack","_calculateHeight","offsetTop","resetSubgroups","orderSubgroups","_checkIfVisible","sortArray","sortField","startArray","orderByStart","orderByEnd","oldVisibleItems","visibleItemsLookup","lowerBound","upperBound","_checkIfVisibleWithReference","initialPosByStart","_traceVisible","initialPosByEnd","initialPos","breakCondition","EPSILON","aTime","bTime","iMax","collidingItem","jj","collision","newTop","baseClassName","getComputedStyle","maxWidth","_repaintDragLeft","_repaintDragRight","contentLeft","parentWidth","boxWidth","minimumStep","autoScale","FORMAT","minorLabels","majorLabels","setFormat","setMinimumStep","first","roundToMinor","setDate","setHours","setMinutes","setSeconds","setMilliseconds","getMilliseconds","getSeconds","getMinutes","getHours","hasNext","setScale","setAutoScale","stepYear","stepMonth","stepDay","stepHour","stepMinute","stepSecond","stepMillisecond","isMajor","getLabelMinor","getLabelMajor","getClassName","even","today","currentWeek","currentMonth","currentYear","marginLeft","onTop","itemSubgroup","totalHeight","newHeight","lines","majorTexts","minorTexts","lineTop","showMinorLabels","showMajorLabels","parentChanged","_calculateCharSize","minorLabelHeight","minorCharHeight","majorLabelHeight","majorCharHeight","minorLineHeight","minorLineWidth","majorLineHeight","majorLineWidth","foregroundNextSibling","nextSibling","backgroundNextSibling","_repaintLabels","timeLabelsize","minorCharWidth","cur","prevLine","xPrev","xFirstMajorLabel","_repaintMinorText","_repaintMajorText","_repaintMajorLine","_repaintMinorLine","leftTime","leftText","widthText","majorCharWidth","pop","createTextNode","childNodes","nodeValue","measureCharMinor","measureCharMajor","overlay","_onTapOverlay","bodyHammer","prevent_default","_hasParent","deactivate","keycharm","escListener","activate","display","unbind","_exportFunctions","_bound","keydown","keyup","_keys","fromCharCode","down","handleEvent","up","keyCode","bound","bindAll","getKey","newBindings","eventParams","drag","_interopRequireDefault","__esModule","default","_classCallCheck","instance","Constructor","defineProperty","_createClass","defineProperties","descriptor","enumerable","configurable","writable","protoProps","staticProps","_ColorPicker","_ColorPicker2","parentModule","defaultContainer","pixelRatio","changedOptions","allowCreation","showButton","moduleOptions","domElements","colorPicker","wrapper","_clean","_this","_handleObject","_makeItem","_makeHeader","generateButton","_printOptions","onmouseover","onmouseout","optionsContainer","_push","insertTo","path","_this2","_len","_key","div","objectLabel","selectedValue","_update","_makeLabel","oninput","checkbox","checked","_this3","defaultColor","_showColorPicker","_this4","bodyRect","pickerX","pickerY","setColor","setCallback","colorString","checkOnly","visibleInSet","subObj","newPath","_getValue","_handleArray","_makeTextInput","_makeCheckbox","draw","physics","solver","enabledPath","enabledValue","error","_makeColorField","_makeDropdown","_makeRange","_constructOptions","optionsObj","ColorPicker","generated","centerCoordinates","hueCircle","initialColor","previousColor","applied","updateCallback","_bindHammer","_setSize","htmlColors","black","navy","darkblue","mediumblue","darkgreen","teal","darkcyan","deepskyblue","darkturquoise","mediumspringgreen","lime","springgreen","aqua","cyan","midnightblue","dodgerblue","lightseagreen","forestgreen","seagreen","darkslategray","limegreen","mediumseagreen","turquoise","royalblue","steelblue","darkslateblue","mediumturquoise","indigo","darkolivegreen","cadetblue","cornflowerblue","mediumaquamarine","dimgray","slateblue","olivedrab","slategray","lightslategray","mediumslateblue","lawngreen","chartreuse","aquamarine","maroon","purple","olive","gray","skyblue","lightskyblue","blueviolet","darkred","darkmagenta","saddlebrown","darkseagreen","lightgreen","mediumpurple","darkviolet","palegreen","darkorchid","yellowgreen","sienna","brown","darkgray","lightblue","greenyellow","paleturquoise","lightsteelblue","powderblue","firebrick","darkgoldenrod","mediumorchid","rosybrown","darkkhaki","silver","mediumvioletred","indianred","peru","chocolate","tan","lightgrey","palevioletred","thistle","orchid","goldenrod","crimson","gainsboro","plum","burlywood","lightcyan","lavender","darksalmon","violet","palegoldenrod","lightcoral","khaki","aliceblue","honeydew","azure","sandybrown","wheat","beige","whitesmoke","mintcream","ghostwhite","salmon","antiquewhite","linen","lightgoldenrodyellow","oldlace","fuchsia","magenta","deeppink","orangered","tomato","hotpink","coral","darkorange","lightsalmon","orange","lightpink","pink","gold","peachpuff","navajowhite","moccasin","bisque","mistyrose","blanchedalmond","papayawhip","lavenderblush","seashell","cornsilk","lemonchiffon","floralwhite","snow","yellow","lightyellow","ivory","white","setInitial","htmlColor","_isColorString","rgbaArray","rgbObj","alpha","_setColor","_generateHueCircle","storePrevious","_hide","_updatePicker","alert","angleConvert","colorPickerSelector","colorPickerCanvas","pixelRation","devicePixelRatio","webkitBackingStorePixelRatio","mozBackingStorePixelRatio","msBackingStorePixelRatio","oBackingStorePixelRatio","backingStorePixelRatio","setTransform","putImageData","circle","brightnessRange","opacityRange","initialColorDiv","newColorDiv","colorPickerDiv","opacityDiv","brightnessDiv","arrowDiv","_setOpacity","_setBrightness","brightnessLabel","opacityLabel","cancelButton","applyButton","_apply","saveButton","_save","loadButton","_loadLast","pinch","_moveSelector","sat","hfac","sfac","fillRect","getImageData","centerY","centerX","newLeft","referenceOptions","subObject","usedOptions","check","__any__","getSuggestion","checkFields","__type__","referenceOption","refOptionObj","optionType","refOptionType","print","printLocation","localSearch","findInOptions","globalSearch","localSearchThreshold","globalSearchThreshold","indexMatch","closestMatch","recursive","closestMatchPath","lowerCaseOption","op","levenshteinDistance","matrix","boolean","nada","undef","linegraph","getLegend","isGroupVisible","yAxisLeft","yAxisRight","legendLeft","legendRight","screenToValue","yAxisOrientation","defaultGroup","sampling","graphHeight","shaded","barChart","sideBySide","interpolation","parametrization","dataAxis","icons","alignZeros","legend","abortedGraphUpdate","updateSVGheight","updateSVGheightOnResize","lastStart","svgElements","groupsUsingDefaultStyles","COUNTER","svg","framework","BarFunctions","LineFunctions","_updateAllGroupData","_updateGroup","removeGroup","addGroup","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","sampledData","combinedDataLeft","combinedDataRight","getData","getYRange","getStackedYRange","minVal","maxVal","yAxisLeftUsed","yAxisRightUsed","minLeft","minRight","maxLeft","maxRight","ignore","_toggleAxisVisiblity","drawIcons","master","lineOffset","stepPixels","zeroCrossing","amountOfSteps","tempGroups","axisUsed","datapoints","xValue","yValue","extractedData","svgHeight","labelValue","convertValue","setZeroPosition","linegraphOptions","majorLinesOffset","minorLinesOffset","labelOffsetX","labelOffsetY","iconWidth","linegraphSVG","DOMelements","labels","conversionFactor","minWidth","iconsRemoved","amountOfGroups","lineContainer","graphOptions","_redrawGroupIcons","iconHeight","iconOffset","groupArray","drawIcon","_cleanupIcons","activeGroups","_redrawLabels","_redrawTitle","stepSize","marginRange","valueAtBottom","marginEnd","maxLabelSize","stepIndex","_redrawLabel","_redrawLine","titleWidth","titleCharHeight","invertedValue","convertedValue","characterHeight","largestWidth","textMinor","textMajor","textTitle","measureCharTitle","titleCharWidth","customRange","formattingFunction","marginStart","deadSpace","majorSteps","minorSteps","setFirst","safeRange","minimumStepValue","orderOfMagnitude","minorStepIdx","magnitudefactor","solutionFound","niceStart","niceEnd","rounded","previous","steps","usingDefaultStyle","zeroPosition","Line","Bar","Points","SVGcontainer","fillPath","fillHeight","outline","barWidth","bar1Height","bar2Height","icon","combinedData","groupLabel","intersections","_getDataIntersections","_getStackedYRange","accumulatedNegative","accumulatedPositive","xpos","coreDistance","amount","resolved","_catmullRom","_linear","dFill","_catmullRomUniform","p0","bp1","bp2","normalization","d1","d2","d3","A","N","d3powA","d2powA","d3pow2A","d2pow2A","d1pow2A","d1powA","Bargraph","drawData","barPoints","heightOffset","_getSafeDrawData","nextKey","prevKey","side","iconSize","iconSpacing","textArea","scrollableHeight","drawLegendIcons","paddingTop","any","nodes","nodeIndices","edges","edgeIndices","functions","createNode","createEdge","eventListeners","onTap","onDoubleTap","onHold","onDragStart","onDrag","onDragEnd","onPinch","onMouseMove","onContext","view","bindEventListeners","images","_modulesGroups2","_modulesCanvas2","selectionHandler","_modulesSelectionHandler2","interactionHandler","_modulesInteractionHandler2","_modulesView2","renderer","_modulesCanvasRenderer2","_modulesPhysicsEngine2","layoutEngine","_modulesLayoutEngine2","clustering","_modulesClustering2","manipulation","_modulesManipulationSystem2","nodesHandler","_modulesNodesHandler2","edgesHandler","_modulesEdgesHandler2","_sharedConfigurator2","_optionsJs","_modulesGroups","_modulesNodesHandler","_modulesEdgesHandler","_modulesPhysicsEngine","_modulesClustering","_modulesCanvasRenderer","_modulesCanvas","_modulesView","_modulesInteractionHandler","_modulesSelectionHandler","_modulesLayoutEngine","_modulesManipulationSystem","_sharedConfigurator","_sharedValidator","_sharedValidator2","layout","interaction","networkOptions","_updateVisibleIndices","nodeId","edgeId","updatePhysicsData","_updateValueRange","unselectAll","dotData","gephi","gephiData","valueTotal","setValueRange","canvasToDOM","DOMtoCanvas","findNode","isCluster","openCluster","cluster","getNodesInCluster","clusterByConnection","clusterByHubsize","clusterOutliers","getSeed","enableEditMode","disableEditMode","addNodeMode","editNode","editNodeMode","addEdgeMode","editEdgeMode","deleteSelected","getPositions","storePositions","getBoundingBox","getConnectedNodes","objectId","getConnectedEdges","startSimulation","stopSimulation","stabilize","getSelectedNodes","getSelectedEdges","getNodeAt","getEdgeAt","edge","selectNodes","selectEdges","getViewPosition","releaseNode","Groups","defaultIndex","groupsArray","groupIndex","defaultGroups","useDefaultGroups","optionFields","groupName","groupname","_componentsNode","_componentsNode2","_componentsSharedLabel","_componentsSharedLabel2","NodesHandler","nodesListeners","borderWidthSelected","brokenImage","fixed","face","strokeColor","image","level","mass","scaling","maxVisible","drawThreshold","customScalingFunction","shadow","shape","parseOptions","updateShape","updateLabelModule","_reset","doNotEmit","oldNodesData","newNodes","_properties","positionInitially","changedData","dataChanged","constructorClass","dataArray","boundingBox","nodeList","nodeObj","toId","fromId","edgeList","_sharedLabel","_sharedLabel2","_nodesShapesBox","_nodesShapesBox2","_nodesShapesCircle","_nodesShapesCircle2","_nodesShapesCircularImage","_nodesShapesCircularImage2","_nodesShapesDatabase","_nodesShapesDatabase2","_nodesShapesDiamond","_nodesShapesDiamond2","_nodesShapesDot","_nodesShapesDot2","_nodesShapesEllipse","_nodesShapesEllipse2","_nodesShapesIcon","_nodesShapesIcon2","_nodesShapesImage","_nodesShapesImage2","_nodesShapesSquare","_nodesShapesSquare2","_nodesShapesStar","_nodesShapesStar2","_nodesShapesText","_nodesShapesText2","_nodesShapesTriangle","_nodesShapesTriangle2","_nodesShapesTriangleDown","_nodesShapesTriangleDown2","Node","imagelist","grouplist","globalOptions","baseSize","baseFontSize","predefinedPosition","labelModule","status","groupObj","imageObj","load","distanceToBorder","sizeDiff","fontDiff","updateBoundingBox","resize","parentOptions","newOptions","parsedColor","_slicedToArray","Symbol","_arr","_n","_e","_s","err","Label","yLine","labelDirty","baseline","viewFontSize","calculateLabelSize","_drawBackground","_drawText","lineMargin","fontSize","_getColor","_getColor2","fontColor","_setAlignment","_setAlignment2","lineJoin","lineCount","strokeText","_processLabel","measureText","newOptionsArray","_inherits","subClass","superClass","__proto__","_get","_x","_x2","_x3","_again","receiver","desc","getOwnPropertyDescriptor","getPrototypeOf","_utilNodeBase","_utilNodeBase2","Box","_NodeBase","textSize","getTextSize","selectionLineWidth","roundRect","enableShadow","disableShadow","NodeBase","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY","_utilCircleImageBase","_utilCircleImageBase2","Circle","_CircleImageBase","diameter","_drawRawCircle","CircleImageBase","labelOffset","imageLoaded","ratio","networkScaleInv","globalAlpha","drawImage","labelDimensions","CircularImage","_swapToImageResizeWhenImageLoaded","_resizeImage","save","clip","_drawImageAtPosition","restore","_drawImageLabel","_distanceToBorder","Database","database","_utilShapeBase","_utilShapeBase2","Diamond","_ShapeBase","_resizeShape","_drawShape","ShapeBase","sizeMultiplier","Dot","Ellipse","ellipse","Icon","_icon","iconTextSpacing","Image","Square","Star","Text","Triangle","TriangleDown","_componentsEdge","_componentsEdge2","EdgesHandler","edgesListeners","arrows","scaleFactor","dashes","hoverWidth","selectionWidth","selfReferenceSize","smooth","roundness","emitChange","edgeData","edgeOptions","reconnectEdges","markAllEdgesAsDirty","updateEdgeType","oldEdgesData","edgesData","oldEdge","disconnect","showInternalIds","connect","via","supportNodes","edgeType","colorDirty","_edgesBezierEdgeDynamic","_edgesBezierEdgeDynamic2","_edgesBezierEdgeStatic","_edgesBezierEdgeStatic2","_edgesStraightEdge","_edgesStraightEdge2","Edge","baseWidth","connected","_setInteractionWidths","changeInType","cleanup","togglePhysics","attachEdge","detachEdge","widthDiff","drawLine","drawArrows","drawLabel","viaNode","drawArrowHead","node1","node2","getPoint","translate","_rotateForLabelAlignment","_pointOnCircle","xFrom","yFrom","xTo","yTo","xObj","yObj","getDistanceToEdge","angleInDegrees","rotate","percentage","colorsDefined","_utilBezierEdgeBase","_utilBezierEdgeBase2","BezierEdgeDynamic","_BezierEdgeBase","setupSupportNode","parentEdgeId","positionBezierNode","quadraticCurveTo","nearNode","_findBorderPositionBezier","x1","y1","x2","y2","x3","y3","_getDistanceToBezierEdge","_x4","_EdgeBase2","_EdgeBase3","BezierEdgeBase","_EdgeBase","distanceToPoint","difference","_getViaCoordinates","xVia","yVia","minDistance","lastX","lastY","_getDistanceToLine","EdgeBase","getColor","getLineWidth","_drawDashedLine","_drawLine","_line","_getCircleData","_getCircleData2","_circle","lineCap","pattern","setLineDash","lineDashOffset","_getCircleData3","_getCircleData32","dashedLine","_getCircleData4","_getCircleData42","_findBorderPosition","_findBorderPositionCircle","_getCircleData5","_getCircleData52","colorOptions","grd","createLinearGradient","fromColor","toColor","addColorStop","_getDistanceToEdge","_getCircleData6","_getCircleData62","px","py","something","u","arrowPos","guideOffset","findBorderPosition","guidePos","arrow","_angle","_getCircleData7","_getCircleData72","_length","_x5","_x6","BezierEdgeStatic","factor","pi","originalAngle","myAngle","_utilEdgeBase","_utilEdgeBase2","StraightEdge","edgeSegmentLength","toBorderDist","toBorderPoint","borderPos","_componentsPhysicsBarnesHutSolver","_componentsPhysicsBarnesHutSolver2","_componentsPhysicsRepulsionSolver","_componentsPhysicsRepulsionSolver2","_componentsPhysicsHierarchicalRepulsionSolver","_componentsPhysicsHierarchicalRepulsionSolver2","_componentsPhysicsSpringSolver","_componentsPhysicsSpringSolver2","_componentsPhysicsHierarchicalSpringSolver","_componentsPhysicsHierarchicalSpringSolver2","_componentsPhysicsCentralGravitySolver","_componentsPhysicsCentralGravitySolver2","_componentsPhysicsFA2BasedRepulsionSolver","_componentsPhysicsFA2BasedRepulsionSolver2","_componentsPhysicsFA2BasedCentralGravitySolver","_componentsPhysicsFA2BasedCentralGravitySolver2","PhysicsEngine","physicsBody","physicsNodeIndices","physicsEdgeIndices","forces","velocities","physicsEnabled","simulationInterval","requiresTimeout","previousStates","freezeCache","renderTimer","stabilized","startedStabilization","stabilizationIterations","ready","barnesHut","theta","gravitationalConstant","centralGravity","springLength","springConstant","damping","avoidOverlap","forceAtlas2Based","repulsion","nodeDistance","hierarchicalRepulsion","maxVelocity","minVelocity","stabilization","iterations","updateInterval","onlyDynamicEdges","timestep","initPhysics","nodesSolver","edgesSolver","gravitySolver","modelOptions","viewFunction","simulationStep","_emitStabilized","startTime","physicsTick","physicsTime","runDoubleSpeed","calculateForces","moveNodes","revert","nodeIds","vx","vy","nodesPresent","vminCorrected","nodeVelocity","_performStep","totalVelocity","solve","targetIterations","_freezeNodes","_stabilizationBatch","_finalizeStabilization","_restoreFrozenNodes","BarnesHutSolver","barnesHutTree","thetaInversed","overlapAvoidanceFactor","nodeCount","_formBarnesHutTree","_getForceContribution","NW","NE","SW","SE","parentBranch","childrenCount","centerOfMass","calcSize","_calculateForces","gravityForce","fx","fy","minX","minY","maxX","maxY","minimumTreeSize","rootSize","halfRootSize","_splitBranch","_placeInTree","totalMass","totalMassInv","biggestSize","skipMassUpdate","_updateBranchMass","_placeInRegion","region","containedNode","_insertRegion","childSize","_drawBranch","branch","RepulsionSolver","repulsingForce","HierarchicalRepulsionSolver","steepness","SpringSolver","edgeLength","node3","_calculateSpringForce","springForce","HierarchicalSpringSolver","springFx","springFy","totalFx","totalFy","correctionFx","correctionFy","CentralGravitySolver","_BarnesHutSolver2","_BarnesHutSolver3","ForceAtlas2BasedRepulsionSolver","_BarnesHutSolver","degree","_CentralGravitySolver2","_CentralGravitySolver3","ForceAtlas2BasedCentralGravitySolver","_CentralGravitySolver","_componentsNodesCluster","_componentsNodesCluster2","ClusterEngine","clusteredNodes","hubsize","_getHubSize","_checkOptions","nodesToCluster","refreshData","joinCondition","childNodesObj","childEdgesObj","clonedOptions","_cloneOptions","_cluster","clusters","visibleEdges","childNodeId","_getConnectedId","_checkIfUsed","clusterNodeProperties","parentNodeId","parentClonedOptions","childClonedOptions","amountOfConnections","newEdges","clusterEdgeProperties","childNode","otherNodeId","childKeys","processProperties","childNodesOptions","childEdgesOptions","clusterId","_getClusterPosition","clusterNode","containedNodes","containedEdges","_createClusterEdges","clusterNodeId","clusteredNode","_clusterNode","newEdge","nodesArray","average","averageSquared","hubCounter","largestHub","letiance","standardDeviation","hubThreshold","_Node2","_Node3","Cluster","_Node","requestAnimationFrame","mozRequestAnimationFrame","webkitRequestAnimationFrame","msRequestAnimationFrame","CanvasRenderer","redrawRequested","renderingActive","renderRequests","allowRedrawRequests","hideEdgesOnDrag","hideNodesOnDrag","_determineBrowserMethod","_resizeNodes","_requestRedraw","_startRendering","cancelAnimationFrame","_renderStep","_drawEdges","_drawNodes","controlNodesActive","_drawControlNodes","alwaysShow","topLeft","bottomRight","viewableArea","isSelected","isBoundingBoxOverlappingWith","browserType","Canvas","resizeTimer","resizeFunction","hammerFrame","_cleanUp","tabIndex","_prepareValue","emitEvent","oldWidth","oldHeight","_XconvertCanvasToDOM","_YconvertCanvasToDOM","_XconvertDOMtoCanvas","_YconvertDOMtoCanvas","View","animationSpeed","renderRefreshRate","animationEasingFunction","easingTime","sourceScale","targetScale","sourceTranslation","targetTranslation","lockedOnNodeId","lockedOnNodeOffset","touchTime","specificNodes","zoomLevel","initialZoom","positionDefined","_getRange","numberOfNodes","yDistance","xZoomLevel","yZoomLevel","_findCenter","animationOptions","nodePosition","lockedOnNode","animateView","locked","_transitionRedraw","viewCenter","distanceFromCenter","_lockedRedraw","finished","_componentsNavigationHandler","_componentsNavigationHandler2","_componentsPopup","_componentsPopup2","InteractionHandler","navigationHandler","popup","popupObj","popupTimer","dragNodes","dragView","keyboard","speed","bindToWindow","navigationButtons","tooltipDelay","zoomView","pinched","checkSelectionChanges","_generateClickEvent","previouslySelectedEdgeCount","_getSelectedEdgeCount","previouslySelectedNodeCount","_getSelectedNodeCount","previousSelection","selectAdditionalOnPoint","selectOnPoint","selectedEdgesCount","selectedNodesCount","currentSelection","_determineIfDifferent","nodesChanges","edgesChanges","selectObject","selectionObj","xFixed","yFixed","_handleDragStart","scaleOld","preScaleDragPointer","scaleFrac","tx","ty","postScaleDragPointer","popupVisible","_checkHidePopup","setPosition","_checkShowPopup","hoverObject","pointerObj","previousPopupObjId","nodeUnderCursor","popupType","overlappingNodes","isOverlappingWith","getTitle","overlappingEdges","popupTargetType","popupTargetId","setText","_pointerToPositionObject","stillOnObj","overNode","NavigationHandler","iconsCreated","navigationHammers","boundFunctions","activated","_stopMovement","configureKeyboardBindings","loadNavigationElements","cleanNavigation","navigationDOM","navigationDivs","navigationDivActions","_fit","bindToRedraw","boundAction","unbindFromRedraw","Popup","doShow","SelectionHandler","hoverObj","selectConnectedEdges","hoverConnectedEdges","updateSelection","selectionChanged","deselectObject","DOM","highlightEdges","_selectConnectedEdges","_addToSelection","_removeFromSelection","canvasPos","returnNode","positionObject","_getAllNodesOverlappingWith","_getEdgesOverlappingWith","returnEdge","_getAllEdgesOverlappingWith","clusterSize","_addToHover","hoverChanged","blurObject","_hoverConnectedEdges","edgeIds","idArray","RangeError","LayoutEngine","initialRandomSeed","randomSeed","optionsBackup","hierarchical","levelSeparation","sortMethod","hierarchicalLevels","setupHierarchicalLayout","prevHierarchicalState","adaptAllOptions","isFixed","seededRandom","definedLevel","undefinedLevel","nodeSpacing","_determineLevelsByHubsize","_determineLevelsDirected","distribution","_getDistribution","_placeNodesByHierarchy","positionedNodes","_placeBranchNodes","hubSize","_setLevelByHubsize","minLevel","_setLevelDirected","parentId","parentLevel","childNodeLevel","ManipulationSystem","editMode","manipulationDiv","editModeDiv","closeDiv","manipulationHammers","temporaryUIFunctions","temporaryEventFunctions","temporaryIds","guiEnabled","inMode","selectedControlNode","initiallyActive","addNode","addEdge","editEdge","deleteNode","deleteEdge","controlNodeStyle","_restore","_setup","showManipulatorToolbar","_createEditButton","manipulationDOM","selectedNodeCount","selectedEdgeCount","selectedTotalCount","needSeperator","_createAddNodeButton","_createSeperator","_createAddEdgeButton","_createEditNodeButton","_createEditEdgeButton","_createDeleteButton","_bindHammerToDiv","toggleEditMode","_temporaryBindEvent","_createBackButton","_createDescription","_performAddNode","_getSelectedNode","finalizedData","_temporaryBindUI","_handleConnect","_finishConnect","_dragControlNode","edgeBeingEditedId","controlNodeFrom","_getNewTargetNode","controlNodeTo","_controlNodeTouch","_controlNodeDragStart","_controlNodeDrag","_controlNodeDragEnd","positions","findBorderPositions","selectedNodes","selectedEdges","deleteFunction","_createWrappers","_removeManipulationDOM","_createButton","_cleanManipulatorHammers","_cleanupTemporaryNodesAndEdges","_unbindTemporaryUIs","_unbindTemporaryEvents","labelClassName","newFunction","boundFunction","UIfunctionName","functionName","eventName","domElement","indexTempEdge","indexTempNode","lastTouch","fromSelect","toSelect","overlappingNodeIds","_performEditEdge","targetNode","connectionEdge","connectFromId","_performAddEdge","clickData","defaultData","sourceNodeId","targetNodeId","_this5","_this6","CanvasRenderingContext2D","square","s2","ir","triangleDown","star","diamond","r2d","kappa","ox","oy","xe","ye","xm","ym","bezierCurveTo","wEllipse","hEllipse","ymb","yeb","xt","yt","xi","yi","xl","yl","xr","yr","patternLength","slope","distRemaining","patternIndex","dashLength","parseDOT","parseGraph","nextPreview","isAlphaNumeric","regexAlphaNumeric","setValue","o","graphs","attr","getToken","tokenType","TOKENTYPE","NULL","isComment","DELIMITER","c2","DELIMITERS","IDENTIFIER","newSyntaxError","UNKNOWN","chop","parseStatements","parseStatement","subgraph","parseSubgraph","parseEdge","parseAttributeStatement","parseNodeStatement","subgraphs","parseAttributeList","message","maxLength","forEach2","elem1","elem2","setProp","convertAttr","mapping","visProp","visPropI","graphData","dotNode","graphNode","NODE_ATTR_MAPPING","convertEdge","dotEdge","graphEdge","EDGE_ATTR_MAPPING","subEdge","fontsize","fontcolor","labelfontcolor","fontname","fillcolor","labeltooltip","{","}","[","]",";","=",",","->","--","gephiJSON","inheritColor","gEdges","gNodes","gEdge","gNode","imageBroken","url","brokenUrl","img","onload","onerror","edit","del","back","addDescription","edgeDescription","editEdgeDescription","createEdgeError","deleteClusterError","editClusterError"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"vis.map","sources":["./dist/vis.js"],"names":["root","factory","exports","module","define","amd","this","modules","__webpack_require__","moduleId","installedModules","id","loaded","call","m","c","p","util","DOMutil","DataSet","DataView","Queue","Graph3d","graph3d","Camera","Filter","Point2d","Point3d","Slider","StepNumber","Timeline","Graph2d","timeline","DateUtil","DataStep","Range","stack","TimeStep","components","items","Item","BackgroundItem","BoxItem","PointItem","RangeItem","Component","CurrentTime","CustomTime","DataAxis","GraphGroup","Group","BackgroundGroup","ItemSet","Legend","LineGraph","TimeAxis","Network","network","Images","dotparser","gephiParser","convertDot","input","DOTToGraph","convertGephi","options","parseGephi","Graph","Error","moment","hammer","Hammer","data","conversion","props","dot","width","height","line","undefined","start","prototype","isVisible","range","interval","end","redraw","dom","box","document","createElement","content","className","appendChild","dirty","parent","parentNode","foreground","background","axis","displayed","_updateContents","_updateTitle","_updateDataAttributes","_updateStyle","selected","offsetHeight","offsetWidth","_repaintDeleteButton","show","hide","removeChild","repositionX","toScreen","align","left","style","repositionY","orientation","item","top","bottom","itemSetHeight","itemSet","lineHeight","getWidthLeft","getWidthRight","select","unselect","setData","groupChanged","group","_moveToGroup","setParent","anchor","editable","remove","deleteButton","me","title","on","event","stopPropagation","removeFromDataSet","element","template","itemData","itemsData","get","changed","_contentToString","Element","innerHTML","type","removeAttribute","dataAttributes","length","attributes","Array","isArray","Object","keys","i","name","value","setAttribute","removeCssText","addCssText","outerHTML","window","propagating","preventDefault","__WEBPACK_AMD_DEFINE_FACTORY__","__WEBPACK_AMD_DEFINE_ARRAY__","__WEBPACK_AMD_DEFINE_RESULT__","apply","_firstTarget","_processing","split","events","match","propagatedHandler","srcEvent","_handled","stopped","firstTarget","elem","_handlers","_options","Manager","PropagatingHammer","extend","_on","_off","off","_emit","emit","_destroy","destroy","pointerType","isFirst","target","isFinal","handler","forEach","push","filter","h","eventType","exportName","setTimeoutContext","fn","timeout","context","setTimeout","bindFn","invokeArrayArg","arg","each","obj","iterator","hasOwnProperty","dest","src","merge","inherit","child","base","properties","childP","baseP","create","constructor","_super","arguments","boolOrFn","val","args","TYPE_FUNCTION","ifUndefined","val1","val2","addEventListeners","types","splitStr","addEventListener","removeEventListeners","removeEventListener","hasParent","node","inStr","str","find","indexOf","trim","inArray","findByKey","toArray","slice","uniqueArray","key","sort","results","values","a","b","prefixed","property","prefix","prop","camelProp","toUpperCase","VENDOR_PREFIXES","uniqueId","_uniqueId","getWindowForElement","doc","ownerDocument","defaultView","parentWindow","Input","manager","callback","self","inputTarget","domHandler","ev","enable","init","createInputInstance","Type","inputClass","SUPPORT_POINTER_EVENTS","PointerEventInput","SUPPORT_ONLY_TOUCH","TouchInput","SUPPORT_TOUCH","TouchMouseInput","MouseInput","inputHandler","pointersLen","pointers","changedPointersLen","changedPointers","INPUT_START","INPUT_END","INPUT_CANCEL","session","computeInputData","recognize","prevInput","pointersLength","firstInput","simpleCloneInputData","firstMultiple","offsetCenter","center","getCenter","timeStamp","now","deltaTime","angle","getAngle","distance","getDistance","computeDeltaXY","offsetDirection","getDirection","deltaX","deltaY","scale","getScale","rotation","getRotation","computeIntervalInputData","offset","offsetDelta","prevDelta","x","y","velocity","velocityX","velocityY","direction","last","lastInterval","COMPUTE_INTERVAL","v","getVelocity","abs","clientX","round","clientY","DIRECTION_NONE","DIRECTION_LEFT","DIRECTION_RIGHT","DIRECTION_UP","DIRECTION_DOWN","p1","p2","PROPS_XY","Math","sqrt","atan2","PI","PROPS_CLIENT_XY","evEl","MOUSE_ELEMENT_EVENTS","evWin","MOUSE_WINDOW_EVENTS","allow","pressed","POINTER_ELEMENT_EVENTS","POINTER_WINDOW_EVENTS","store","pointerEvents","SingleTouchInput","evTarget","SINGLE_TOUCH_TARGET_EVENTS","SINGLE_TOUCH_WINDOW_EVENTS","started","normalizeSingleTouches","all","touches","changedTouches","concat","TOUCH_TARGET_EVENTS","targetIds","getTouches","allTouches","INPUT_MOVE","identifier","targetTouches","changedTargetTouches","touch","mouse","TouchAction","set","cleanTouchActions","actions","TOUCH_ACTION_NONE","hasPanX","TOUCH_ACTION_PAN_X","hasPanY","TOUCH_ACTION_PAN_Y","TOUCH_ACTION_MANIPULATION","TOUCH_ACTION_AUTO","Recognizer","defaults","state","STATE_POSSIBLE","simultaneous","requireFail","stateStr","STATE_CANCELLED","STATE_ENDED","STATE_CHANGED","STATE_BEGAN","directionStr","getRecognizerByNameIfManager","otherRecognizer","recognizer","AttrRecognizer","PanRecognizer","pX","pY","PinchRecognizer","PressRecognizer","_timer","_input","RotateRecognizer","SwipeRecognizer","TapRecognizer","pTime","pCenter","count","recognizers","preset","handlers","touchAction","toggleCssProps","add","recognizeWith","requireFailure","cssProps","triggerDomEvent","gestureEvent","createEvent","initEvent","gesture","dispatchEvent","TEST_ELEMENT","Date","MOBILE_REGEX","test","navigator","userAgent","INPUT_TYPE_TOUCH","INPUT_TYPE_PEN","INPUT_TYPE_MOUSE","INPUT_TYPE_KINECT","DIRECTION_HORIZONTAL","DIRECTION_VERTICAL","DIRECTION_ALL","MOUSE_INPUT_MAP","mousedown","mousemove","mouseup","button","which","POINTER_INPUT_MAP","pointerdown","pointermove","pointerup","pointercancel","pointerout","IE10_POINTER_TYPE_ENUM",2,3,4,5,"MSPointerEvent","removePointer","eventTypeNormalized","toLowerCase","replace","isTouch","storeIndex","pointerId","splice","SINGLE_TOUCH_INPUT_MAP","touchstart","touchmove","touchend","touchcancel","TOUCH_INPUT_MAP","inputEvent","inputData","isMouse","PREFIXED_TOUCH_ACTION","NATIVE_TOUCH_ACTION","TOUCH_ACTION_COMPUTE","compute","update","getTouchAction","join","preventDefaults","prevented","hasNone","preventSrc","STATE_RECOGNIZED","STATE_FAILED","dropRecognizeWith","dropRequireFailure","index","hasRequireFailures","canRecognizeWith","withState","tryEmit","canEmit","inputDataClone","process","reset","attrTest","optionPointers","isRecognized","isValid","threshold","directionTest","hasMoved","inOut","time","validPointers","validMovement","validTime","clearTimeout","taps","posThreshold","validTouchTime","failTimeout","validInterval","validMultiTap","tapCount","VERSION","domEvents","userSelect","touchSelect","touchCallout","contentZooming","userDrag","tapHighlightColor","STOP","FORCED_STOP","stop","force","curRecognizer","existing","Tap","Pan","Swipe","Pinch","Rotate","Press","__webpack_amd_options__","uuid","isNumber","object","Number","recursiveDOMDelete","DOMobject","hasChildNodes","firstChild","giveRange","min","max","total","isString","String","isDate","ASPDateRegex","exec","isNaN","parse","randomUUID","v4","assignAllKeys","fillIfDefined","allowDeletion","protoExtend","other","selectiveExtend","selectiveDeepExtend","TypeError","deepExtend","selectiveNotDeepExtend","equalArray","len","convert","Boolean","valueOf","isMoment","toDate","getType","toISOString","copyAndExtendArray","arr","newValue","newArr","copyArray","getAbsoluteLeft","getBoundingClientRect","getAbsoluteTop","addClassName","classes","removeClassName","array","updateProperty","action","listener","useCapture","attachEvent","detachEvent","returnValue","getTarget","srcElement","nodeType","e","option","asBoolean","defaultValue","asNumber","asString","asSize","asElement","hexToRGB","hex","shorthandRegex","r","g","result","parseInt","overrideOpacity","color","opacity","rgb","substr","RGBToHex","red","green","blue","toString","parseColor","isValidRGB","map","isValidHex","hsv","hexToHSV","lighterColorHSV","s","darkerColorHSV","darkerColorHex","HSVToHex","lighterColorHex","border","highlight","hover","RGBToHSV","minRGB","maxRGB","d","hue","saturation","cssUtil","cssText","styles","parts","currentStyles","newStyles","removeStyles","HSVToRGB","floor","f","q","t","isOk","isValidRGBA","rgba","selectiveBridgeObject","fields","referenceObject","objectTo","bridgeObject","mergeOptions","mergeTarget","enabled","binarySearchCustom","orderedItems","searchFunction","field","field2","maxIterations","iteration","low","high","middle","searchResult","binarySearchValue","sidePreference","prevValue","nextValue","easingFunctions","linear","easeInQuad","easeOutQuad","easeInOutQuad","easeInCubic","easeOutCubic","easeInOutCubic","easeInQuart","easeOutQuart","easeInOutQuart","easeInQuint","easeOutQuint","easeInOutQuint","global","utils_hooks__hooks","hookCallback","setHookCallback","res","hasOwnProp","create_utc__createUTC","format","locale","strict","createLocalOrUTC","utc","defaultParsingFlags","empty","unusedTokens","unusedInput","overflow","charsLeftOver","nullInput","invalidMonth","invalidFormat","userInvalidated","iso","getParsingFlags","_pf","valid__isValid","_isValid","flags","_d","getTime","_strict","bigHour","valid__createInvalid","NaN","copyConfig","to","from","_isAMomentObject","_i","_f","_l","_tzm","_isUTC","_offset","_locale","momentProperties","Moment","config","updateInProgress","updateOffset","toInt","argumentForCoercion","coercedNumber","isFinite","ceil","compareArrays","array1","array2","dontConvert","lengthDiff","diffs","Locale","normalizeLocale","chooseLocale","names","j","next","loadLocale","oldLocale","locales","globalLocale","_abbr","code","locale_locales__getSetGlobalLocale","locale_locales__getLocale","defineLocale","abbr","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","sign","addFormatToken","token","padded","ordinal","func","formatTokenFunctions","localeData","removeFormattingTokens","makeFormatFunction","formattingTokens","Function","formatMoment","expandFormat","formatFunctions","invalidDate","replaceLongDateFormatTokens","longDateFormat","localFormattingTokens","lastIndex","addRegexToken","regex","strictRegex","regexes","isStrict","getParseRegexForToken","RegExp","unescapeFormat","matched","p3","p4","addParseToken","tokens","addWeekParseToken","_w","addTimeToArrayFromToken","_a","daysInMonth","year","month","UTC","getUTCDate","localeMonths","_months","localeMonthsShort","_monthsShort","localeMonthsParse","monthName","_monthsParse","_longMonthsParse","_shortMonthsParse","months","monthsShort","setMonth","dayOfMonth","monthsParse","date","getSetMonth","getDaysInMonth","checkOverflow","MONTH","DATE","YEAR","HOUR","MINUTE","SECOND","MILLISECOND","_overflowDayOfYear","warn","msg","suppressDeprecationWarnings","console","deprecate","firstTime","msgWithStack","deprecateSimple","deprecations","configFromISO","l","string","from_string__isoRegex","isoDates","isoTimes","matchOffset","configFromStringAndFormat","configFromString","aspNetJsonRegex","createFromInputFallback","createDate","M","ms","setFullYear","createUTCDate","setUTCFullYear","daysInYear","isLeapYear","getIsLeapYear","weekOfYear","firstDayOfWeek","firstDayOfWeekOfYear","adjustedMoment","daysToDayOfWeek","day","local__createLocal","week","dayOfYear","localeWeek","_week","dow","doy","localeFirstDayOfWeek","localeFirstDayOfYear","getSetWeek","getSetISOWeek","dayOfYearFromWeeks","weekday","daysToAdd","getUTCDay","getSetDayOfYear","clone","startOf","currentDateArray","_useUTC","getUTCFullYear","getUTCMonth","getFullYear","getMonth","getDate","configFromArray","currentDate","yearToUse","dayOfYearFromWeekInfo","_dayOfYear","_nextDay","setUTCMinutes","getUTCMinutes","w","weekYear","temp","GG","W","E","gg","ISO_8601","parsedInput","skipped","stringLength","totalParsedInputLength","meridiemFixWrap","_meridiem","hour","meridiem","isPm","meridiemHour","isPM","configFromStringAndArray","tempConfig","bestMoment","scoreToBeat","currentScore","score","configFromObject","minute","second","millisecond","createFromConfig","preparse","configFromInput","isUTC","pickBy","moments","Duration","duration","years","quarters","quarter","weeks","days","hours","minutes","seconds","milliseconds","_milliseconds","_days","_data","_bubble","isDuration","separator","utcOffset","offsetFromString","matches","chunk","chunkOffset","cloneWithOffset","model","diff","setTime","local","getDateOffset","getTimezoneOffset","getSetOffset","keepLocalTime","localAdjust","_changeInProgress","add_subtract__addSubtract","create__createDuration","getSetZone","setOffsetToUTC","setOffsetToLocal","subtract","setOffsetToParsedOffset","hasAlignedHourOffset","isDaylightSavingTime","isDaylightSavingTimeShifted","isLocal","isUtcOffset","isUtc","ret","diffRes","aspNetRegex","create__isoRegex","parseIso","momentsDifference","inp","parseFloat","positiveMomentsDifference","isAfter","isBefore","createAdder","period","dur","tmp","isAdding","moment_calendar__calendar","sod","calendar","inputMs","endOf","isBetween","isSame","absFloor","asFloat","delta","that","zoneDelta","monthDiff","anchor2","adjust","wholeMonthDiff","moment_format__toISOString","inputString","defaultFormat","postformat","withoutSuffix","humanize","fromNow","toNow","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","charAt","localeMeridiem","isLower","millisecond__milliseconds","getZoneAbbr","getZoneName","moment__createUnix","moment__createInZone","parseZone","locale_calendar__calendar","_calendar","_longDateFormat","_invalidDate","_ordinal","preParsePostFormat","relative__relativeTime","isFuture","_relativeTime","pastFuture","locale_set__set","_ordinalParseLenient","_ordinalParse","source","lists__get","setter","list","out","lists__listMonths","lists__listMonthsShort","lists__listWeekdays","lists__listWeekdaysShort","lists__listWeekdaysMin","duration_abs__abs","mathAbs","duration_add_subtract__addSubtract","duration_add_subtract__add","duration_add_subtract__subtract","bubble","daysToYears","yearsToDays","as","duration_as__valueOf","makeAs","alias","duration_get__get","makeGetter","substituteTimeAgo","relativeTime","duration_humanize__relativeTime","posNegDuration","thresholds","duration_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","lang","isoWeekYear","getSetDayOfMonth","invalidWeekday","defaultLocaleWeekdays","defaultLocaleWeekdaysShort","defaultLocaleWeekdaysMin","_isPm","defaultLocaleMeridiemParse","getSetHour","getSetMinute","getSetSecond","getSetMillisecond","momentPrototype__proto","toJSON","isoWeek","isoWeeks","isoWeeksInYear","isDST","isDSTShifted","zoneAbbr","zoneName","dates","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","duration_get__milliseconds","duration_prototype__proto","toIsoString","version","invalid","relativeTimeThreshold","_moment","webpackPolyfill","paths","children","webpackContext","req","resolve","buf","ii","oct","_hexToByte","unparse","bth","_byteToHex","v1","clockseq","_clockseq","msecs","nsecs","_lastNSecs","dt","_lastMSecs","tl","tmh","_nodeId","n","rnds","random","rng","_rng","globalVar","crypto","getRandomValues","_rnds8","Uint8Array","_rnds","_seedBytes","prepareElements","JSONcontainer","elementType","redundant","used","cleanupElements","getSVGElement","svgContainer","shift","createElementNS","getDOMElement","DOMContainer","insertBefore","drawPoint","labelObj","point","drawPoints","setAttributeNS","size","label","xOffset","yOffset","textContent","drawBar","rect","_fieldId","fieldId","_type","_subscribers","setOptions","queue","_queue","subscribers","subscribe","unsubscribe","_trigger","params","senderId","subscriber","addedIds","_addItem","updatedIds","updatedData","addOrUpdate","_updateItem","ids","firstType","returnType","allowedValues","itemId","_getItem","order","_sort","_filterFields","getIds","getDataSet","mappedItems","filteredItem","av","bv","removedId","removedIds","_remove","clear","maxField","itemField","minField","distinct","fieldType","exists","raw","converted","JSON","stringify","delay","Infinity","_timeout","_extended","_flushIfNeeded","flush","methods","original","method","entry","_ids","_onEvent","refresh","newIds","added","removed","viewOptions","getArguments","defaultFilter","dataSet","updated","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","dataTable","dataPoints","colX","colY","colZ","colValue","colFilter","xMin","xStep","xMax","yMin","yStep","yMax","zMin","zStep","zMax","valueMin","valueMax","xBarWidth","yBarWidth","colorAxis","colorGrid","colorDot","colorDotBorder","getMouseX","getMouseY","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","getNumberOfColumns","getNumberOfRows","counter","column","getDistinctValues","distinctValues","getColumnRange","minMax","_dataInitialize","rawData","_onChange","dataFilter","setOnLoadCallback","withBars","defaultXBarWidth","dataX","defaultYBarWidth","dataY","xRange","defaultXMin","defaultXMax","defaultXStep","yRange","defaultYMin","defaultYMax","defaultYStep","zRange","defaultZMin","defaultZMax","defaultZStep","valueRange","defaultValueMin","defaultValueMax","_getDataPoints","sortNumber","dataMatrix","xIndex","yIndex","trans","screen","pointRight","pointTop","pointCross","position","noCanvas","fontWeight","padding","onmousedown","_onMouseDown","ontouchstart","_onTouchStart","onmousewheel","_onWheel","ontooltip","_onTooltip","onkeydown","setSize","_resizeCanvas","clientHeight","animationStart","slider","play","animationStop","_resizeCenter","setCameraPosition","pos","horizontal","vertical","setArmRotation","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","textAlign","textBaseline","fillText","visible","setValues","setPlayInterval","onchange","getIndex","selectValue","setOnChangeCallback","lineStyle","getLabel","getSelectedValue","prettyStep","text","xText","yText","zText","xMin2d","xMax2d","gridLenX","gridLenY","textMargin","armAngle","H","S","V","R","G","B","C","Hi","X","cross","topSideVisible","zAvg","transBottom","dist","sortDepth","aDiff","bDiff","crossproduct","crossProduct","radius","arc","surface","corners","xWidth","yWidth","surfaces","avg","transCenter","leftButtonDown","_onMouseUp","touchDown","startMouseX","startMouseY","startStart","startEnd","startArmRotation","cursor","onmousemove","_onMouseMove","onmouseup","diffX","diffY","horizontalNew","verticalNew","snapAngle","snapValue","parameters","boundingRect","mouseX","mouseY","tooltipTimeout","_hideTooltip","dataPoint","_dataPointFromXY","_showTooltip","ontouchmove","_onTouchMove","ontouchend","_onTouchEnd","wheelDelta","detail","oldLength","newLength","_insideTriangle","triangle","bs","cs","distMax","closestDataPoint","closestDist","triangle1","triangle2","distX","distY","borderRadius","boxShadow","borderLeft","contentWidth","contentHeight","dotWidth","dotHeight","mixin","_callbacks","once","removeListener","removeAllListeners","callbacks","cb","listeners","hasListeners","sub","sum","armLocation","armRotation","armLength","cameraLocation","cameraRotation","calculateCameraOrientation","rot","graph","onLoadCallback","loadInBackground","isLoaded","getLoadedProgress","getColumn","getValues","getValue","dataView","progress","prev","bar","MozBorderRadius","slide","onclick","togglePlay","onChangeCallback","playTimeout","playInterval","playLoop","setIndex","playNext","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","maxHeight","minHeight","_create","body","domProps","emitter","bind","hiddenDates","timeAxis","_toScreen","toGlobalScreen","_toGlobalScreen","toTime","_toTime","toGlobalTime","_toGlobalTime","timeAxis2","currentTime","groupsData","getEventProperties","oncontextmenu","configurator","Configurator","configureOptions","setGroups","setItems","_redraw","Core","Validator","printStyle","allOptions","markDirty","refreshItems","errorFound","validate","selection","getSelection","setSelection","newDataSet","initialLoad","getItemRange","setWindow","animation","fit","focus","_this","getDataRange","minItem","maxItem","factor","lhs","rhs","getStart","getEnd","dataset","centerContainer","itemFromTarget","groupFromTarget","customTime","customTimeFromTarget","snap","snappedTime","what","labelSet","groupId","pageX","pageY","showCurrentTime","backgroundVertical","warned","current","substring","currentTimeTimer","setCurrentTime","getCurrentTime","_isResized","resized","_previousWidth","_previousHeight","deltaDifference","scaleOffset","startToFront","endToFront","moveable","zoomable","zoomMin","zoomMax","animationTimer","_onDragStart","_onDrag","_onDragEnd","_onMouseWheel","_onTouch","_onPinch","validateDirection","getPointer","byUser","finalStart","finalEnd","_cancelAnimation","initStart","initEnd","easingName","easingFunction","initTime","anyChanged","dragging","ease","done","_applyRange","updateHiddenDates","newStart","newEnd","getRange","totalHidden","previousDelta","allowDragging","getHiddenDurationBetween","diffRange","safeStart","snapAwayFromHidden","safeEnd","pointer","pointerDate","_pointerToDate","zoom","centerDate","hiddenDuration","hiddenDurationBefore","getHiddenDurationBefore","hiddenDurationAfter","move","onTouch","isTouching","onRelease","isReleasing","offTouch","offRelease","convertHiddenOptions","repeat","dateItem","totalRange","pixelTime","startDate","endDate","runUntil","dayOffset","removeDuplicates","startHidden","isHidden","endHidden","rangeStart","rangeEnd","hidden","safeDates","printDates","stepOverHiddenDates","timeStep","previousTime","stepInHidden","currentValue","switchedYear","switchedMonth","switchedDay","correctTimeForHidden","totalDuration","partialDuration","accumulatedHiddenDuration","getAccumulatedHiddenDuration","newTime","timeOffset","requiredDuration","previousPoint","correctionEnabled","hammerUtil","Activator","onMouseWheel","isActive","backgroundHorizontal","leftContainer","rightContainer","shadowTop","shadowBottom","shadowTopLeft","shadowBottomLeft","shadowTopRight","shadowBottomRight","_redrawTimer","scrollTop","scrollTopMin","customTimes","redrawCount","clickToUse","activator","_initAutoResize","component","configure","appliedOptions","setModuleOptions","active","_stopAutoResize","setCustomTime","getCustomTime","addCustomTime","timestamp","some","removeCustomTime","getVisibleItems","dataRange","getWindow","borderRootHeight","borderRootWidth","autoHeight","containerHeight","centerWidth","_updateScrollTop","visibilityTop","visibilityBottom","visibility","MAX_REDRAWS","repaint","_startAutoResize","_onResize","lastWidth","lastHeight","watchTimer","setInterval","initialScrollTop","oldScrollTop","_getScrollTop","newScrollTop","_setScrollTop","groupOrder","selectable","multiselect","updateTime","updateGroup","onAdd","onUpdate","onMove","onRemove","onMoving","itemOptions","itemListeners","_onAdd","_onUpdate","_onRemove","groupListeners","_onAddGroups","_onUpdateGroups","_onRemoveGroups","groupIds","stackDirty","touchParams","UNGROUPED","BACKGROUND","_updateUngrouped","backgroundGroup","_onSelectItem","_onMultiSelectItem","_onAddItem","addCallback","rawVisibleItems","visibleItems","_deselect","_orderGroups","visibleInterval","zoomed","lastVisibleInterval","restack","firstGroup","_firstGroup","firstMargin","nonFirstMargin","groupMargin","groupResized","firstGroupIndex","firstGroupId","ungrouped","_getGroupId","getLabelSet","oldItemsData","getItems","_order","getGroups","removeItem","_getType","_removeItem","groupData","groupOptions","oldGroupId","oldSubGroupId","subgroup","oldGroup","_constructByEndArray","endArray","dragLeftItem","dragRightItem","itemProps","initialX","dragLeft","dragRight","ctrlKey","metaKey","_onDragStartAddItem","xAbs","newItem","offsetLeft","initial","initialStart","initialEnd","changes","shiftKey","oldSelection","newSelection","_getItemRange","_item","itemSetFromTarget","subgroups","subgroupIndex","subgroupOrderer","subgroupOrder","byStart","byEnd","checkRangedItems","inner","marker","getLabelWidth","markerHeight","lastMarkerHeight","limitSize","customOrderedItems","_updateVisibleItems","nostack","_calculateHeight","offsetTop","resetSubgroups","orderSubgroups","_checkIfVisible","sortArray","sortField","startArray","orderByStart","orderByEnd","oldVisibleItems","visibleItemsLookup","lowerBound","upperBound","_checkIfVisibleWithReference","initialPosByStart","_traceVisible","initialPosByEnd","initialPos","breakCondition","EPSILON","aTime","bTime","iMax","collidingItem","jj","collision","newTop","baseClassName","getComputedStyle","maxWidth","_repaintDragLeft","_repaintDragRight","contentLeft","parentWidth","boxWidth","minimumStep","autoScale","FORMAT","minorLabels","majorLabels","setFormat","setMinimumStep","first","roundToMinor","setDate","setHours","setMinutes","setSeconds","setMilliseconds","getMilliseconds","getSeconds","getMinutes","getHours","hasNext","setScale","setAutoScale","stepYear","stepMonth","stepDay","stepHour","stepMinute","stepSecond","stepMillisecond","isMajor","getLabelMinor","getLabelMajor","getClassName","even","today","currentWeek","currentMonth","currentYear","marginLeft","onTop","itemSubgroup","totalHeight","newHeight","lines","majorTexts","minorTexts","lineTop","showMinorLabels","showMajorLabels","parentChanged","_calculateCharSize","minorLabelHeight","minorCharHeight","majorLabelHeight","majorCharHeight","minorLineHeight","minorLineWidth","majorLineHeight","majorLineWidth","foregroundNextSibling","nextSibling","backgroundNextSibling","_repaintLabels","timeLabelsize","minorCharWidth","cur","prevLine","xPrev","xFirstMajorLabel","_repaintMinorText","_repaintMajorText","_repaintMajorLine","_repaintMinorLine","leftTime","leftText","widthText","majorCharWidth","pop","createTextNode","childNodes","nodeValue","measureCharMinor","measureCharMajor","overlay","_onTapOverlay","bodyHammer","prevent_default","_hasParent","deactivate","keycharm","escListener","activate","display","unbind","_exportFunctions","_bound","keydown","keyup","_keys","fromCharCode","down","handleEvent","up","keyCode","bound","bindAll","getKey","newBindings","eventParams","drag","_interopRequireDefault","__esModule","default","_classCallCheck","instance","Constructor","defineProperty","_createClass","defineProperties","descriptor","enumerable","configurable","writable","protoProps","staticProps","_ColorPicker","_ColorPicker2","parentModule","defaultContainer","pixelRatio","changedOptions","allowCreation","showButton","moduleOptions","domElements","colorPicker","wrapper","_clean","_handleObject","_makeItem","_makeHeader","generateButton","_printOptions","onmouseover","onmouseout","optionsContainer","_push","insertTo","path","_this2","_len","_key","div","objectLabel","selectedValue","_update","_makeLabel","oninput","checkbox","checked","_this3","defaultColor","_showColorPicker","_this4","bodyRect","pickerX","pickerY","setColor","setCallback","colorString","checkOnly","visibleInSet","subObj","newPath","_getValue","_handleArray","_makeTextInput","_makeCheckbox","draw","physics","solver","enabledPath","enabledValue","error","_makeColorField","_makeDropdown","_makeRange","_constructOptions","optionsObj","ColorPicker","generated","centerCoordinates","hueCircle","initialColor","previousColor","applied","updateCallback","_bindHammer","_setSize","htmlColors","black","navy","darkblue","mediumblue","darkgreen","teal","darkcyan","deepskyblue","darkturquoise","mediumspringgreen","lime","springgreen","aqua","cyan","midnightblue","dodgerblue","lightseagreen","forestgreen","seagreen","darkslategray","limegreen","mediumseagreen","turquoise","royalblue","steelblue","darkslateblue","mediumturquoise","indigo","darkolivegreen","cadetblue","cornflowerblue","mediumaquamarine","dimgray","slateblue","olivedrab","slategray","lightslategray","mediumslateblue","lawngreen","chartreuse","aquamarine","maroon","purple","olive","gray","skyblue","lightskyblue","blueviolet","darkred","darkmagenta","saddlebrown","darkseagreen","lightgreen","mediumpurple","darkviolet","palegreen","darkorchid","yellowgreen","sienna","brown","darkgray","lightblue","greenyellow","paleturquoise","lightsteelblue","powderblue","firebrick","darkgoldenrod","mediumorchid","rosybrown","darkkhaki","silver","mediumvioletred","indianred","peru","chocolate","tan","lightgrey","palevioletred","thistle","orchid","goldenrod","crimson","gainsboro","plum","burlywood","lightcyan","lavender","darksalmon","violet","palegoldenrod","lightcoral","khaki","aliceblue","honeydew","azure","sandybrown","wheat","beige","whitesmoke","mintcream","ghostwhite","salmon","antiquewhite","linen","lightgoldenrodyellow","oldlace","fuchsia","magenta","deeppink","orangered","tomato","hotpink","coral","darkorange","lightsalmon","orange","lightpink","pink","gold","peachpuff","navajowhite","moccasin","bisque","mistyrose","blanchedalmond","papayawhip","lavenderblush","seashell","cornsilk","lemonchiffon","floralwhite","snow","yellow","lightyellow","ivory","white","setInitial","htmlColor","_isColorString","rgbaArray","rgbObj","alpha","_setColor","_generateHueCircle","storePrevious","_hide","_updatePicker","alert","angleConvert","colorPickerSelector","colorPickerCanvas","pixelRation","devicePixelRatio","webkitBackingStorePixelRatio","mozBackingStorePixelRatio","msBackingStorePixelRatio","oBackingStorePixelRatio","backingStorePixelRatio","setTransform","putImageData","circle","brightnessRange","opacityRange","initialColorDiv","newColorDiv","colorPickerDiv","opacityDiv","brightnessDiv","arrowDiv","_setOpacity","_setBrightness","brightnessLabel","opacityLabel","cancelButton","applyButton","_apply","saveButton","_save","loadButton","_loadLast","pinch","_moveSelector","sat","hfac","sfac","fillRect","getImageData","centerY","centerX","newLeft","referenceOptions","subObject","usedOptions","check","__any__","getSuggestion","checkFields","__type__","referenceOption","refOptionObj","optionType","refOptionType","print","printLocation","localSearch","findInOptions","globalSearch","localSearchThreshold","globalSearchThreshold","indexMatch","closestMatch","recursive","closestMatchPath","lowerCaseOption","op","levenshteinDistance","matrix","boolean","nada","undef","linegraph","getLegend","isGroupVisible","yAxisLeft","yAxisRight","legendLeft","legendRight","screenToValue","yAxisOrientation","defaultGroup","sampling","graphHeight","shaded","barChart","sideBySide","interpolation","parametrization","dataAxis","icons","alignZeros","legend","abortedGraphUpdate","updateSVGheight","updateSVGheightOnResize","lastStart","svgElements","groupsUsingDefaultStyles","COUNTER","svg","framework","BarFunctions","LineFunctions","_updateAllGroupData","_updateGroup","removeGroup","addGroup","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","sampledData","combinedDataLeft","combinedDataRight","getData","getYRange","getStackedYRange","minVal","maxVal","yAxisLeftUsed","yAxisRightUsed","minLeft","minRight","maxLeft","maxRight","ignore","_toggleAxisVisiblity","drawIcons","master","lineOffset","stepPixels","zeroCrossing","amountOfSteps","tempGroups","axisUsed","datapoints","xValue","yValue","extractedData","svgHeight","labelValue","convertValue","setZeroPosition","linegraphOptions","majorLinesOffset","minorLinesOffset","labelOffsetX","labelOffsetY","iconWidth","linegraphSVG","DOMelements","labels","conversionFactor","minWidth","iconsRemoved","amountOfGroups","lineContainer","graphOptions","_redrawGroupIcons","iconHeight","iconOffset","groupArray","drawIcon","_cleanupIcons","activeGroups","_redrawLabels","_redrawTitle","stepSize","marginRange","valueAtBottom","marginEnd","maxLabelSize","stepIndex","_redrawLabel","_redrawLine","titleWidth","titleCharHeight","invertedValue","convertedValue","characterHeight","largestWidth","textMinor","textMajor","textTitle","measureCharTitle","titleCharWidth","customRange","formattingFunction","marginStart","deadSpace","majorSteps","minorSteps","setFirst","safeRange","minimumStepValue","orderOfMagnitude","minorStepIdx","magnitudefactor","solutionFound","niceStart","niceEnd","rounded","previous","steps","usingDefaultStyle","zeroPosition","Line","Bar","Points","SVGcontainer","fillPath","fillHeight","outline","barWidth","bar1Height","bar2Height","icon","combinedData","groupLabel","intersections","_getDataIntersections","_getStackedYRange","accumulatedNegative","accumulatedPositive","xpos","coreDistance","amount","resolved","_catmullRom","_linear","dFill","_catmullRomUniform","p0","bp1","bp2","normalization","d1","d2","d3","A","N","d3powA","d2powA","d3pow2A","d2pow2A","d1pow2A","d1powA","Bargraph","drawData","barPoints","heightOffset","_getSafeDrawData","nextKey","prevKey","side","iconSize","iconSpacing","textArea","scrollableHeight","drawLegendIcons","paddingTop","any","nodes","nodeIndices","edges","edgeIndices","functions","createNode","createEdge","eventListeners","onTap","onDoubleTap","onHold","onDragStart","onDrag","onDragEnd","onPinch","onMouseMove","onContext","view","bindEventListeners","images","_modulesGroups2","_modulesCanvas2","selectionHandler","_modulesSelectionHandler2","interactionHandler","_modulesInteractionHandler2","_modulesView2","renderer","_modulesCanvasRenderer2","_modulesPhysicsEngine2","layoutEngine","_modulesLayoutEngine2","clustering","_modulesClustering2","manipulation","_modulesManipulationSystem2","nodesHandler","_modulesNodesHandler2","edgesHandler","_modulesEdgesHandler2","_sharedConfigurator2","_optionsJs","_modulesGroups","_modulesNodesHandler","_modulesEdgesHandler","_modulesPhysicsEngine","_modulesClustering","_modulesCanvasRenderer","_modulesCanvas","_modulesView","_modulesInteractionHandler","_modulesSelectionHandler","_modulesLayoutEngine","_modulesManipulationSystem","_sharedConfigurator","_sharedValidator","_sharedValidator2","layout","interaction","networkOptions","_updateVisibleIndices","nodeId","edgeId","updatePhysicsData","_updateValueRange","unselectAll","dotData","gephi","gephiData","valueTotal","setValueRange","canvasToDOM","DOMtoCanvas","findNode","isCluster","openCluster","cluster","getNodesInCluster","clusterByConnection","clusterByHubsize","clusterOutliers","getSeed","enableEditMode","disableEditMode","addNodeMode","editNode","editNodeMode","addEdgeMode","editEdgeMode","deleteSelected","getPositions","storePositions","getBoundingBox","getConnectedNodes","objectId","getConnectedEdges","startSimulation","stopSimulation","stabilize","getSelectedNodes","getSelectedEdges","getNodeAt","getEdgeAt","edge","selectNodes","selectEdges","getViewPosition","releaseNode","Groups","defaultIndex","groupsArray","groupIndex","defaultGroups","useDefaultGroups","optionFields","groupName","groupname","_componentsNode","_componentsNode2","_componentsSharedLabel","_componentsSharedLabel2","NodesHandler","nodesListeners","borderWidthSelected","brokenImage","fixed","face","strokeColor","image","level","mass","scaling","maxVisible","drawThreshold","customScalingFunction","shadow","shape","parseOptions","updateShape","updateLabelModule","_reset","doNotEmit","oldNodesData","newNodes","_properties","positionInitially","changedData","dataChanged","constructorClass","dataArray","boundingBox","nodeList","nodeObj","toId","fromId","edgeList","_sharedLabel","_sharedLabel2","_nodesShapesBox","_nodesShapesBox2","_nodesShapesCircle","_nodesShapesCircle2","_nodesShapesCircularImage","_nodesShapesCircularImage2","_nodesShapesDatabase","_nodesShapesDatabase2","_nodesShapesDiamond","_nodesShapesDiamond2","_nodesShapesDot","_nodesShapesDot2","_nodesShapesEllipse","_nodesShapesEllipse2","_nodesShapesIcon","_nodesShapesIcon2","_nodesShapesImage","_nodesShapesImage2","_nodesShapesSquare","_nodesShapesSquare2","_nodesShapesStar","_nodesShapesStar2","_nodesShapesText","_nodesShapesText2","_nodesShapesTriangle","_nodesShapesTriangle2","_nodesShapesTriangleDown","_nodesShapesTriangleDown2","Node","imagelist","grouplist","globalOptions","baseSize","baseFontSize","predefinedPosition","labelModule","status","groupObj","imageObj","load","distanceToBorder","sizeDiff","fontDiff","updateBoundingBox","resize","parentOptions","newOptions","parsedColor","_slicedToArray","Symbol","_arr","_n","_e","_s","err","Label","yLine","labelDirty","baseline","viewFontSize","calculateLabelSize","_drawBackground","_drawText","lineMargin","fontSize","_getColor","_getColor2","fontColor","_setAlignment","_setAlignment2","lineJoin","lineCount","strokeText","_processLabel","measureText","newOptionsArray","_inherits","subClass","superClass","__proto__","_get","_x","_x2","_x3","_again","receiver","desc","getOwnPropertyDescriptor","getPrototypeOf","_utilNodeBase","_utilNodeBase2","Box","_NodeBase","textSize","getTextSize","selectionLineWidth","roundRect","enableShadow","disableShadow","NodeBase","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY","_utilCircleImageBase","_utilCircleImageBase2","Circle","_CircleImageBase","diameter","_drawRawCircle","CircleImageBase","labelOffset","imageLoaded","ratio","networkScaleInv","globalAlpha","drawImage","labelDimensions","CircularImage","_swapToImageResizeWhenImageLoaded","_resizeImage","save","clip","_drawImageAtPosition","restore","_drawImageLabel","_distanceToBorder","Database","database","_utilShapeBase","_utilShapeBase2","Diamond","_ShapeBase","_resizeShape","_drawShape","ShapeBase","sizeMultiplier","Dot","Ellipse","ellipse","Icon","_icon","iconTextSpacing","Image","Square","Star","Text","Triangle","TriangleDown","_componentsEdge","_componentsEdge2","EdgesHandler","edgesListeners","arrows","scaleFactor","dashes","hoverWidth","selectionWidth","selfReferenceSize","smooth","roundness","emitChange","edgeData","edgeOptions","reconnectEdges","markAllEdgesAsDirty","updateEdgeType","oldEdgesData","edgesData","oldEdge","disconnect","showInternalIds","connect","via","supportNodes","edgeType","colorDirty","_edgesBezierEdgeDynamic","_edgesBezierEdgeDynamic2","_edgesBezierEdgeStatic","_edgesBezierEdgeStatic2","_edgesStraightEdge","_edgesStraightEdge2","Edge","baseWidth","connected","_setInteractionWidths","changeInType","cleanup","togglePhysics","attachEdge","detachEdge","widthDiff","drawLine","drawArrows","drawLabel","viaNode","drawArrowHead","node1","node2","getPoint","translate","_rotateForLabelAlignment","_pointOnCircle","xFrom","yFrom","xTo","yTo","xObj","yObj","getDistanceToEdge","angleInDegrees","rotate","percentage","colorsDefined","_utilBezierEdgeBase","_utilBezierEdgeBase2","BezierEdgeDynamic","_BezierEdgeBase","setupSupportNode","parentEdgeId","positionBezierNode","quadraticCurveTo","nearNode","_findBorderPositionBezier","x1","y1","x2","y2","x3","y3","_getDistanceToBezierEdge","_x4","_EdgeBase2","_EdgeBase3","BezierEdgeBase","_EdgeBase","distanceToPoint","difference","_getViaCoordinates","xVia","yVia","minDistance","lastX","lastY","_getDistanceToLine","EdgeBase","getColor","getLineWidth","_drawDashedLine","_drawLine","_line","_getCircleData","_getCircleData2","_circle","lineCap","pattern","setLineDash","lineDashOffset","_getCircleData3","_getCircleData32","dashedLine","_getCircleData4","_getCircleData42","_findBorderPosition","_findBorderPositionCircle","_getCircleData5","_getCircleData52","colorOptions","grd","createLinearGradient","fromColor","toColor","addColorStop","_getDistanceToEdge","_getCircleData6","_getCircleData62","px","py","something","u","arrowPos","guideOffset","findBorderPosition","guidePos","arrow","_angle","_getCircleData7","_getCircleData72","_length","_x5","_x6","BezierEdgeStatic","pi","originalAngle","myAngle","_utilEdgeBase","_utilEdgeBase2","StraightEdge","edgeSegmentLength","toBorderDist","toBorderPoint","borderPos","_componentsPhysicsBarnesHutSolver","_componentsPhysicsBarnesHutSolver2","_componentsPhysicsRepulsionSolver","_componentsPhysicsRepulsionSolver2","_componentsPhysicsHierarchicalRepulsionSolver","_componentsPhysicsHierarchicalRepulsionSolver2","_componentsPhysicsSpringSolver","_componentsPhysicsSpringSolver2","_componentsPhysicsHierarchicalSpringSolver","_componentsPhysicsHierarchicalSpringSolver2","_componentsPhysicsCentralGravitySolver","_componentsPhysicsCentralGravitySolver2","_componentsPhysicsFA2BasedRepulsionSolver","_componentsPhysicsFA2BasedRepulsionSolver2","_componentsPhysicsFA2BasedCentralGravitySolver","_componentsPhysicsFA2BasedCentralGravitySolver2","PhysicsEngine","physicsBody","physicsNodeIndices","physicsEdgeIndices","forces","velocities","physicsEnabled","simulationInterval","requiresTimeout","previousStates","freezeCache","renderTimer","stabilized","startedStabilization","stabilizationIterations","ready","barnesHut","theta","gravitationalConstant","centralGravity","springLength","springConstant","damping","avoidOverlap","forceAtlas2Based","repulsion","nodeDistance","hierarchicalRepulsion","maxVelocity","minVelocity","stabilization","iterations","updateInterval","onlyDynamicEdges","timestep","initPhysics","nodesSolver","edgesSolver","gravitySolver","modelOptions","viewFunction","simulationStep","_emitStabilized","startTime","physicsTick","physicsTime","runDoubleSpeed","calculateForces","moveNodes","revert","nodeIds","vx","vy","nodesPresent","vminCorrected","nodeVelocity","_performStep","totalVelocity","solve","targetIterations","_freezeNodes","_stabilizationBatch","_finalizeStabilization","_restoreFrozenNodes","BarnesHutSolver","barnesHutTree","thetaInversed","overlapAvoidanceFactor","nodeCount","_formBarnesHutTree","_getForceContribution","NW","NE","SW","SE","parentBranch","childrenCount","centerOfMass","calcSize","_calculateForces","gravityForce","fx","fy","minX","minY","maxX","maxY","minimumTreeSize","rootSize","halfRootSize","_splitBranch","_placeInTree","totalMass","totalMassInv","biggestSize","skipMassUpdate","_updateBranchMass","_placeInRegion","region","containedNode","_insertRegion","childSize","_drawBranch","branch","RepulsionSolver","repulsingForce","HierarchicalRepulsionSolver","steepness","SpringSolver","edgeLength","node3","_calculateSpringForce","springForce","HierarchicalSpringSolver","springFx","springFy","totalFx","totalFy","correctionFx","correctionFy","CentralGravitySolver","_BarnesHutSolver2","_BarnesHutSolver3","ForceAtlas2BasedRepulsionSolver","_BarnesHutSolver","degree","_CentralGravitySolver2","_CentralGravitySolver3","ForceAtlas2BasedCentralGravitySolver","_CentralGravitySolver","_componentsNodesCluster","_componentsNodesCluster2","ClusterEngine","clusteredNodes","hubsize","_getHubSize","_checkOptions","nodesToCluster","refreshData","joinCondition","childNodesObj","childEdgesObj","clonedOptions","_cloneOptions","_cluster","clusters","visibleEdges","childNodeId","_getConnectedId","_checkIfUsed","clusterNodeProperties","parentNodeId","parentClonedOptions","childClonedOptions","amountOfConnections","newEdges","clusterEdgeProperties","childNode","otherNodeId","childKeys","processProperties","childNodesOptions","childEdgesOptions","clusterId","_getClusterPosition","clusterNode","containedNodes","containedEdges","_createClusterEdges","clusterNodeId","clusteredNode","_clusterNode","newEdge","nodesArray","average","averageSquared","hubCounter","largestHub","letiance","standardDeviation","hubThreshold","_Node2","_Node3","Cluster","_Node","requestAnimationFrame","mozRequestAnimationFrame","webkitRequestAnimationFrame","msRequestAnimationFrame","CanvasRenderer","redrawRequested","renderingActive","renderRequests","allowRedrawRequests","hideEdgesOnDrag","hideNodesOnDrag","_determineBrowserMethod","_resizeNodes","_requestRedraw","_startRendering","cancelAnimationFrame","_renderStep","_drawEdges","_drawNodes","controlNodesActive","_drawControlNodes","alwaysShow","topLeft","bottomRight","viewableArea","isSelected","isBoundingBoxOverlappingWith","browserType","Canvas","resizeTimer","resizeFunction","hammerFrame","_cleanUp","tabIndex","_prepareValue","emitEvent","oldWidth","oldHeight","_XconvertCanvasToDOM","_YconvertCanvasToDOM","_XconvertDOMtoCanvas","_YconvertDOMtoCanvas","View","animationSpeed","renderRefreshRate","animationEasingFunction","easingTime","sourceScale","targetScale","sourceTranslation","targetTranslation","lockedOnNodeId","lockedOnNodeOffset","touchTime","specificNodes","zoomLevel","initialZoom","positionDefined","_getRange","numberOfNodes","yDistance","xZoomLevel","yZoomLevel","_findCenter","animationOptions","nodePosition","lockedOnNode","animateView","locked","_transitionRedraw","viewCenter","distanceFromCenter","_lockedRedraw","finished","_componentsNavigationHandler","_componentsNavigationHandler2","_componentsPopup","_componentsPopup2","InteractionHandler","navigationHandler","popup","popupObj","popupTimer","dragNodes","dragView","keyboard","speed","bindToWindow","navigationButtons","tooltipDelay","zoomView","pinched","checkSelectionChanges","_generateClickEvent","previouslySelectedEdgeCount","_getSelectedEdgeCount","previouslySelectedNodeCount","_getSelectedNodeCount","previousSelection","selectAdditionalOnPoint","selectOnPoint","selectedEdgesCount","selectedNodesCount","currentSelection","_determineIfDifferent","nodesChanges","edgesChanges","selectObject","selectionObj","xFixed","yFixed","_handleDragStart","scaleOld","preScaleDragPointer","scaleFrac","tx","ty","postScaleDragPointer","popupVisible","_checkHidePopup","setPosition","_checkShowPopup","hoverObject","pointerObj","previousPopupObjId","nodeUnderCursor","popupType","overlappingNodes","isOverlappingWith","getTitle","overlappingEdges","popupTargetType","popupTargetId","setText","_pointerToPositionObject","stillOnObj","overNode","NavigationHandler","iconsCreated","navigationHammers","boundFunctions","activated","_stopMovement","configureKeyboardBindings","loadNavigationElements","cleanNavigation","navigationDOM","navigationDivs","navigationDivActions","_fit","bindToRedraw","boundAction","unbindFromRedraw","Popup","doShow","SelectionHandler","hoverObj","selectConnectedEdges","hoverConnectedEdges","updateSelection","selectionChanged","deselectObject","DOM","highlightEdges","_selectConnectedEdges","_addToSelection","_removeFromSelection","canvasPos","returnNode","positionObject","_getAllNodesOverlappingWith","_getEdgesOverlappingWith","returnEdge","_getAllEdgesOverlappingWith","clusterSize","_addToHover","hoverChanged","blurObject","_hoverConnectedEdges","edgeIds","idArray","RangeError","LayoutEngine","initialRandomSeed","randomSeed","optionsBackup","hierarchical","levelSeparation","sortMethod","hierarchicalLevels","setupHierarchicalLayout","prevHierarchicalState","adaptAllOptions","isFixed","seededRandom","definedLevel","undefinedLevel","nodeSpacing","_determineLevelsByHubsize","_determineLevelsDirected","distribution","_getDistribution","_placeNodesByHierarchy","positionedNodes","_placeBranchNodes","hubSize","_setLevelByHubsize","minLevel","_setLevelDirected","parentId","parentLevel","childNodeLevel","ManipulationSystem","editMode","manipulationDiv","editModeDiv","closeDiv","manipulationHammers","temporaryUIFunctions","temporaryEventFunctions","temporaryIds","guiEnabled","inMode","selectedControlNode","initiallyActive","addNode","addEdge","editEdge","deleteNode","deleteEdge","controlNodeStyle","_restore","_setup","showManipulatorToolbar","_createEditButton","manipulationDOM","selectedNodeCount","selectedEdgeCount","selectedTotalCount","needSeperator","_createAddNodeButton","_createSeperator","_createAddEdgeButton","_createEditNodeButton","_createEditEdgeButton","_createDeleteButton","_bindHammerToDiv","toggleEditMode","_temporaryBindEvent","_createBackButton","_createDescription","_performAddNode","_getSelectedNode","finalizedData","_temporaryBindUI","_handleConnect","_finishConnect","_dragControlNode","edgeBeingEditedId","controlNodeFrom","_getNewTargetNode","controlNodeTo","_controlNodeTouch","_controlNodeDragStart","_controlNodeDrag","_controlNodeDragEnd","positions","findBorderPositions","selectedNodes","selectedEdges","deleteFunction","_createWrappers","_removeManipulationDOM","_createButton","_cleanManipulatorHammers","_cleanupTemporaryNodesAndEdges","_unbindTemporaryUIs","_unbindTemporaryEvents","labelClassName","newFunction","boundFunction","UIfunctionName","functionName","eventName","domElement","indexTempEdge","indexTempNode","lastTouch","fromSelect","toSelect","overlappingNodeIds","_performEditEdge","targetNode","connectionEdge","connectFromId","_performAddEdge","clickData","defaultData","sourceNodeId","targetNodeId","_this5","_this6","CanvasRenderingContext2D","square","s2","ir","triangleDown","star","diamond","r2d","kappa","ox","oy","xe","ye","xm","ym","bezierCurveTo","wEllipse","hEllipse","ymb","yeb","xt","yt","xi","yi","xl","yl","xr","yr","patternLength","slope","distRemaining","patternIndex","dashLength","parseDOT","parseGraph","nextPreview","isAlphaNumeric","regexAlphaNumeric","setValue","o","graphs","attr","getToken","tokenType","TOKENTYPE","NULL","isComment","DELIMITER","c2","DELIMITERS","IDENTIFIER","newSyntaxError","UNKNOWN","chop","parseStatements","parseStatement","subgraph","parseSubgraph","parseEdge","parseAttributeStatement","parseNodeStatement","subgraphs","parseAttributeList","message","maxLength","forEach2","elem1","elem2","setProp","convertAttr","mapping","visProp","visPropI","graphData","dotNode","graphNode","NODE_ATTR_MAPPING","convertEdge","dotEdge","graphEdge","EDGE_ATTR_MAPPING","subEdge","fontsize","fontcolor","labelfontcolor","fontname","fillcolor","labeltooltip","{","}","[","]",";","=",",","->","--","gephiJSON","inheritColor","gEdges","gNodes","gEdge","gNode","imageBroken","url","brokenUrl","img","onload","onerror","edit","del","back","addDescription","edgeDescription","editEdgeDescription","createEdgeError","deleteClusterError","editClusterError"],"mappings":"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"} \ No newline at end of file diff --git a/dist/vis.min.js b/dist/vis.min.js index 563ea15b..2a62e54a 100644 --- a/dist/vis.min.js +++ b/dist/vis.min.js @@ -5,7 +5,7 @@ * A dynamic, browser-based visualization library. * * @version 4.1.1-SNAPSHOT - * @date 2015-05-28 + * @date 2015-06-01 * * @license * Copyright (C) 2011-2014 Almende B.V, http://almende.com @@ -22,21 +22,21 @@ * * Vis.js may be distributed under either license. */ -"use strict";!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):"object"==typeof exports?exports.vis=e():t.vis=e()}(this,function(){return function(t){function e(o){if(i[o])return i[o].exports;var n=i[o]={exports:{},id:o,loaded:!1};return t[o].call(n.exports,n,n.exports,e),n.loaded=!0,n.exports}var i={};return e.m=t,e.c=i,e.p="",e(0)}([function(t,e,i){e.util=i(7),e.DOMutil=i(13),e.DataSet=i(14),e.DataView=i(16),e.Queue=i(15),e.Graph3d=i(17),e.graph3d={Camera:i(21),Filter:i(22),Point2d:i(18),Point3d:i(20),Slider:i(23),StepNumber:i(24)},e.Timeline=i(25),e.Graph2d=i(49),e.timeline={DateUtil:i(31),DataStep:i(52),Range:i(29),stack:i(35),TimeStep:i(37),components:{items:{Item:i(2),BackgroundItem:i(40),BoxItem:i(1),PointItem:i(39),RangeItem:i(36)},Component:i(27),CurrentTime:i(26),CustomTime:i(44),DataAxis:i(51),GraphGroup:i(53),Group:i(34),BackgroundGroup:i(38),ItemSet:i(33),Legend:i(57),LineGraph:i(50),TimeAxis:i(41)}},e.Network=i(59),e.network={Images:i(112),dotparser:i(110),gephiParser:i(111)},e.network.convertDot=function(t){return e.network.dotparser.DOTToGraph(t)},e.network.convertGephi=function(t,i){return e.network.gephiParser.parseGephi(t,i)},e.Graph=function(){throw new Error("Graph is renamed to Network. Please create a graph as new vis.Network(...)")},e.moment=i(8),e.hammer=i(3),e.Hammer=i(3)},function(t,e,i){function o(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);n.call(this,t,e,i)}var n=i(2);i(7);o.prototype=new n(null,null,null),o.prototype.isVisible=function(t){var e=(t.end-t.start)/4;return this.data.start>t.start-e&&this.data.start0){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;i0?o._handlers[t]=i:(o._off(t,r),delete o._handlers[t]))}),o},o.emit=function(i,n){e||(t=n.target),o._emit(i,n)},o.destroy=function(){var t=o.element;delete t.hammer,o._handlers={},o._destroy()},o}})},function(t,e,i){var o;!function(n,s,r,a){function h(t,e,i){return setTimeout(f(t,i),e)}function d(t,e,i){return Array.isArray(t)?(l(t,i[e],i),!0):!1}function l(t,e,i){var o;if(t)if(t.forEach)t.forEach(e,i);else if(t.length!==a)for(o=0;o-1}function _(t){return t.trim().split(/\s+/g)}function x(t,e,i){if(t.indexOf&&!i)return t.indexOf(e);for(var o=0;oi[e]}):o.sort()),o}function O(t,e){for(var i,o,n=e[0].toUpperCase()+e.slice(1),s=0;s1&&!i.firstMultiple?i.firstMultiple=z(e):1===n&&(i.firstMultiple=!1);var s=i.firstInput,r=i.firstMultiple,a=r?r.center:s.center,h=e.center=A(o);e.timeStamp=gt(),e.deltaTime=e.timeStamp-s.timeStamp,e.angle=F(a,h),e.distance=R(a,h),I(i,e),e.offsetDirection=B(e.deltaX,e.deltaY),e.scale=r?H(r.pointers,o):1,e.rotation=r?j(r.pointers,o):0,N(i,e);var d=t.element;b(e.srcEvent.target,d)&&(d=e.srcEvent.target),e.target=d}function I(t,e){var i=e.center,o=t.offsetDelta||{},n=t.prevDelta||{},s=t.prevInput||{};(e.eventType===Ct||s.eventType===St)&&(n=t.prevDelta={x:s.deltaX||0,y:s.deltaY||0},o=t.offsetDelta={x:i.x,y:i.y}),e.deltaX=n.x+(i.x-o.x),e.deltaY=n.y+(i.y-o.y)}function N(t,e){var i,o,n,s,r=t.lastInterval||e,h=e.timeStamp-r.timeStamp;if(e.eventType!=Pt&&(h>Tt||r.velocity===a)){var d=r.deltaX-e.deltaX,l=r.deltaY-e.deltaY,u=L(h,d,l);o=u.x,n=u.y,i=vt(u.x)>vt(u.y)?u.x:u.y,s=B(d,l),t.lastInterval=e}else i=r.velocity,o=r.velocityX,n=r.velocityY,s=r.direction;e.velocity=i,e.velocityX=o,e.velocityY=n,e.direction=s}function z(t){for(var e=[],i=0;in;)i+=t[n].clientX,o+=t[n].clientY,n++;return{x:mt(i/e),y:mt(o/e)}}function L(t,e,i){return{x:e/t||0,y:i/t||0}}function B(t,e){return t===e?It:vt(t)>=vt(e)?t>0?Nt:zt:e>0?At:Lt}function R(t,e,i){i||(i=jt);var o=e[i[0]]-t[i[0]],n=e[i[1]]-t[i[1]];return Math.sqrt(o*o+n*n)}function F(t,e,i){i||(i=jt);var o=e[i[0]]-t[i[0]],n=e[i[1]]-t[i[1]];return 180*Math.atan2(n,o)/Math.PI}function j(t,e){return F(e[1],e[0],Ht)-F(t[1],t[0],Ht)}function H(t,e){return R(e[0],e[1],Ht)/R(t[0],t[1],Ht)}function Y(){this.evEl=Wt,this.evWin=Gt,this.allow=!0,this.pressed=!1,C.apply(this,arguments)}function W(){this.evEl=qt,this.evWin=Xt,C.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}function G(){this.evTarget=Kt,this.evWin=Jt,this.started=!1,C.apply(this,arguments)}function U(t,e){var i=k(t.touches),o=k(t.changedTouches);return e&(St|Pt)&&(i=M(i.concat(o),"identifier",!0)),[i,o]}function V(){this.evTarget=$t,this.targetIds={},C.apply(this,arguments)}function q(t,e){var i=k(t.touches),o=this.targetIds;if(e&(Ct|Et)&&1===i.length)return o[i[0].identifier]=!0,[i,i];var n,s,r=k(t.changedTouches),a=[],h=this.target;if(s=i.filter(function(t){return b(t.target,h)}),e===Ct)for(n=0;na&&(e.push(t),a=e.length-1):n&(St|Pt)&&(i=!0),0>a||(e[a]=t,this.callback(this.manager,n,{pointers:e,changedPointers:[t],pointerType:s,srcEvent:t}),i&&e.splice(a,1))}});var Zt={touchstart:Ct,touchmove:Et,touchend:St,touchcancel:Pt},Kt="touchstart",Jt="touchstart touchmove touchend touchcancel";p(G,C,{handler:function(t){var e=Zt[t.type];if(e===Ct&&(this.started=!0),this.started){var i=U.call(this,t,e);e&(St|Pt)&&i[0].length-i[1].length===0&&(this.started=!1),this.callback(this.manager,e,{pointers:i[0],changedPointers:i[1],pointerType:kt,srcEvent:t})}}});var Qt={touchstart:Ct,touchmove:Et,touchend:St,touchcancel:Pt},$t="touchstart touchmove touchend touchcancel";p(V,C,{handler:function(t){var e=Qt[t.type],i=q.call(this,t,e);i&&this.callback(this.manager,e,{pointers:i[0],changedPointers:i[1],pointerType:kt,srcEvent:t})}}),p(X,C,{handler:function(t,e,i){var o=i.pointerType==kt,n=i.pointerType==Ot;if(o)this.mouse.allow=!1;else if(n&&!this.mouse.allow)return;e&(St|Pt)&&(this.mouse.allow=!0),this.callback(t,e,i)},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var te=O(pt.style,"touchAction"),ee=te!==a,ie="compute",oe="auto",ne="manipulation",se="none",re="pan-x",ae="pan-y";Z.prototype={set:function(t){t==ie&&(t=this.compute()),ee&&(this.manager.element.style[te]=t),this.actions=t.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var t=[];return l(this.manager.recognizers,function(e){m(e.options.enable,[e])&&(t=t.concat(e.getTouchAction()))}),K(t.join(" "))},preventDefaults:function(t){if(!ee){var e=t.srcEvent,i=t.offsetDirection;if(this.manager.session.prevented)return void e.preventDefault();var o=this.actions,n=w(o,se),s=w(o,ae),r=w(o,re);return n||s&&i&Bt||r&&i&Rt?this.preventSrc(e):void 0}},preventSrc:function(t){this.manager.session.prevented=!0,t.preventDefault()}};var he=1,de=2,le=4,ue=8,ce=ue,pe=16,fe=32;J.prototype={defaults:{},set:function(t){return u(this.options,t),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(t){if(d(t,"recognizeWith",this))return this;var e=this.simultaneous;return t=tt(t,this),e[t.id]||(e[t.id]=t,t.recognizeWith(this)),this},dropRecognizeWith:function(t){return d(t,"dropRecognizeWith",this)?this:(t=tt(t,this),delete this.simultaneous[t.id],this)},requireFailure:function(t){if(d(t,"requireFailure",this))return this;var e=this.requireFail;return t=tt(t,this),-1===x(e,t)&&(e.push(t),t.requireFailure(this)),this},dropRequireFailure:function(t){if(d(t,"dropRequireFailure",this))return this;t=tt(t,this);var e=x(this.requireFail,t);return e>-1&&this.requireFail.splice(e,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(t){return!!this.simultaneous[t.id]},emit:function(t){function e(e){i.manager.emit(i.options.event+(e?Q(o):""),t)}var i=this,o=this.state;ue>o&&e(!0),e(),o>=ue&&e(!0)},tryEmit:function(t){return this.canEmit()?this.emit(t):void(this.state=fe)},canEmit:function(){for(var t=0;ts?Nt:zt,i=s!=this.pX,o=Math.abs(t.deltaX)):(n=0===r?It:0>r?At:Lt,i=r!=this.pY,o=Math.abs(t.deltaY))),t.direction=n,i&&o>e.threshold&&n&e.direction},attrTest:function(t){return et.prototype.attrTest.call(this,t)&&(this.state&de||!(this.state&de)&&this.directionTest(t))},emit:function(t){this.pX=t.deltaX,this.pY=t.deltaY;var e=$(t.direction);e&&this.manager.emit(this.options.event+e,t),this._super.emit.call(this,t)}}),p(ot,et,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[se]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.scale-1)>this.options.threshold||this.state&de)},emit:function(t){if(this._super.emit.call(this,t),1!==t.scale){var e=t.scale<1?"in":"out";this.manager.emit(this.options.event+e,t)}}}),p(nt,J,{defaults:{event:"press",pointers:1,time:500,threshold:5},getTouchAction:function(){return[oe]},process:function(t){var e=this.options,i=t.pointers.length===e.pointers,o=t.distancee.time;if(this._input=t,!o||!i||t.eventType&(St|Pt)&&!n)this.reset();else if(t.eventType&Ct)this.reset(),this._timer=h(function(){this.state=ce,this.tryEmit()},e.time,this);else if(t.eventType&St)return ce;return fe},reset:function(){clearTimeout(this._timer)},emit:function(t){this.state===ce&&(t&&t.eventType&St?this.manager.emit(this.options.event+"up",t):(this._input.timeStamp=gt(),this.manager.emit(this.options.event,this._input)))}}),p(st,et,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[se]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.rotation)>this.options.threshold||this.state&de)}}),p(rt,et,{defaults:{event:"swipe",threshold:10,velocity:.65,direction:Bt|Rt,pointers:1},getTouchAction:function(){return it.prototype.getTouchAction.call(this)},attrTest:function(t){var e,i=this.options.direction;return i&(Bt|Rt)?e=t.velocity:i&Bt?e=t.velocityX:i&Rt&&(e=t.velocityY),this._super.attrTest.call(this,t)&&i&t.direction&&t.distance>this.options.threshold&&vt(e)>this.options.velocity&&t.eventType&St},emit:function(t){var e=$(t.direction);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)}}),p(at,J,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:2,posThreshold:10},getTouchAction:function(){return[ne]},process:function(t){var e=this.options,i=t.pointers.length===e.pointers,o=t.distancei;i++)if(t[i]!=e[i])return!1;return!0},e.convert=function(t,i){var n;if(void 0===t)return void 0;if(null===t)return null;if(!i)return t;if("string"!=typeof i&&!(i instanceof String))throw new Error("Type must be a string");switch(i){case"boolean":case"Boolean":return Boolean(t);case"number":case"Number":return Number(t.valueOf());case"string":case"String":return String(t);case"Date":if(e.isNumber(t))return new Date(t);if(t instanceof Date)return new Date(t.valueOf());if(o.isMoment(t))return new Date(t.valueOf());if(e.isString(t))return n=s.exec(t),n?new Date(Number(n[1])):o(t).toDate();throw new Error("Cannot convert object of type "+e.getType(t)+" to type Date");case"Moment":if(e.isNumber(t))return o(t);if(t instanceof Date)return o(t.valueOf());if(o.isMoment(t))return o(t);if(e.isString(t))return n=s.exec(t),o(n?Number(n[1]):t);throw new Error("Cannot convert object of type "+e.getType(t)+" to type Date");case"ISODate":if(e.isNumber(t))return new Date(t);if(t instanceof Date)return t.toISOString();if(o.isMoment(t))return t.toDate().toISOString();if(e.isString(t))return n=s.exec(t),n?new Date(Number(n[1])).toISOString():new Date(t).toISOString();throw new Error("Cannot convert object of type "+e.getType(t)+" to type ISODate");case"ASPDate":if(e.isNumber(t))return"/Date("+t+")/";if(t instanceof Date)return"/Date("+t.valueOf()+")/";if(e.isString(t)){n=s.exec(t);var r;return r=n?new Date(Number(n[1])).valueOf():new Date(t).valueOf(),"/Date("+r+")/"}throw new Error("Cannot convert object of type "+e.getType(t)+" to type ASPDate");default:throw new Error('Unknown type "'+i+'"')}};var s=/^\/?Date\((\-?\d+)/i;e.getType=function(t){var e=typeof t;return"object"==e?null===t?"null":t instanceof Boolean?"Boolean":t instanceof Number?"Number":t instanceof String?"String":Array.isArray(t)?"Array":t instanceof Date?"Date":"Object":"number"==e?"Number":"boolean"==e?"Boolean":"string"==e?"String":void 0===e?"undefined":e; -},e.copyAndExtendArray=function(t,e){for(var i=[],o=0;oi;i++)e(t[i],i,t);else for(i in t)t.hasOwnProperty(i)&&e(t[i],i,t)},e.toArray=function(t){var e=[];for(var i in t)t.hasOwnProperty(i)&&e.push(t[i]);return e},e.updateProperty=function(t,e,i){return t[e]!==i?(t[e]=i,!0):!1},e.addEventListener=function(t,e,i,o){t.addEventListener?(void 0===o&&(o=!1),"mousewheel"===e&&navigator.userAgent.indexOf("Firefox")>=0&&(e="DOMMouseScroll"),t.addEventListener(e,i,o)):t.attachEvent("on"+e,i)},e.removeEventListener=function(t,e,i,o){t.removeEventListener?(void 0===o&&(o=!1),"mousewheel"===e&&navigator.userAgent.indexOf("Firefox")>=0&&(e="DOMMouseScroll"),t.removeEventListener(e,i,o)):t.detachEvent("on"+e,i)},e.preventDefault=function(t){t||(t=window.event),t.preventDefault?t.preventDefault():t.returnValue=!1},e.getTarget=function(t){t||(t=window.event);var e;return t.target?e=t.target:t.srcElement&&(e=t.srcElement),void 0!=e.nodeType&&3==e.nodeType&&(e=e.parentNode),e},e.hasParent=function(t,e){for(var i=t;i;){if(i===e)return!0;i=i.parentNode}return!1},e.option={},e.option.asBoolean=function(t,e){return"function"==typeof t&&(t=t()),null!=t?0!=t:e||null},e.option.asNumber=function(t,e){return"function"==typeof t&&(t=t()),null!=t?Number(t)||e||null:e||null},e.option.asString=function(t,e){return"function"==typeof t&&(t=t()),null!=t?String(t):e||null},e.option.asSize=function(t,i){return"function"==typeof t&&(t=t()),e.isString(t)?t:e.isNumber(t)?t+"px":i||null},e.option.asElement=function(t,e){return"function"==typeof t&&(t=t()),t||e||null},e.hexToRGB=function(t){var e=/^#?([a-f\d])([a-f\d])([a-f\d])$/i;t=t.replace(e,function(t,e,i,o){return e+e+i+i+o+o});var i=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(t);return i?{r:parseInt(i[1],16),g:parseInt(i[2],16),b:parseInt(i[3],16)}:null},e.overrideOpacity=function(t,i){if(-1!=t.indexOf("rgba"))return t;if(-1!=t.indexOf("rgb")){var o=t.substr(t.indexOf("(")+1).replace(")","").split(",");return"rgba("+o[0]+","+o[1]+","+o[2]+","+i+")"}var o=e.hexToRGB(t);return null==o?t:"rgba("+o.r+","+o.g+","+o.b+","+i+")"},e.RGBToHex=function(t,e,i){return"#"+((1<<24)+(t<<16)+(e<<8)+i).toString(16).slice(1)},e.parseColor=function(t){var i;if(e.isString(t)===!0){if(e.isValidRGB(t)===!0){var o=t.substr(4).substr(0,t.length-5).split(",").map(function(t){return parseInt(t)});t=e.RGBToHex(o[0],o[1],o[2])}if(e.isValidHex(t)===!0){var n=e.hexToHSV(t),s={h:n.h,s:.8*n.s,v:Math.min(1,1.02*n.v)},r={h:n.h,s:Math.min(1,1.25*n.s),v:.8*n.v},a=e.HSVToHex(r.h,r.s,r.v),h=e.HSVToHex(s.h,s.s,s.v);i={background:t,border:a,highlight:{background:h,border:a},hover:{background:h,border:a}}}else i={background:t,border:t,highlight:{background:t,border:t},hover:{background:t,border:t}}}else i={},i.background=t.background||void 0,i.border=t.border||void 0,e.isString(t.highlight)?i.highlight={border:t.highlight,background:t.highlight}:(i.highlight={},i.highlight.background=t.highlight&&t.highlight.background||void 0,i.highlight.border=t.highlight&&t.highlight.border||void 0),e.isString(t.hover)?i.hover={border:t.hover,background:t.hover}:(i.hover={},i.hover.background=t.hover&&t.hover.background||void 0,i.hover.border=t.hover&&t.hover.border||void 0);return i},e.RGBToHSV=function(t,e,i){t/=255,e/=255,i/=255;var o=Math.min(t,Math.min(e,i)),n=Math.max(t,Math.max(e,i));if(o==n)return{h:0,s:0,v:o};var s=t==o?e-i:i==o?t-e:i-t,r=t==o?3:i==o?1:5,a=60*(r-s/(n-o))/360,h=(n-o)/n,d=n;return{h:a,s:h,v:d}};var r={split:function(t){var e={};return t.split(";").forEach(function(t){if(""!=t.trim()){var i=t.split(":"),o=i[0].trim(),n=i[1].trim();e[o]=n}}),e},join:function(t){return Object.keys(t).map(function(e){return e+": "+t[e]}).join("; ")}};e.addCssText=function(t,i){var o=r.split(t.style.cssText),n=r.split(i),s=e.extend(o,n);t.style.cssText=r.join(s)},e.removeCssText=function(t,e){var i=r.split(t.style.cssText),o=r.split(e);for(var n in o)o.hasOwnProperty(n)&&delete i[n];t.style.cssText=r.join(i)},e.HSVToRGB=function(t,e,i){var o,n,s,r=Math.floor(6*t),a=6*t-r,h=i*(1-e),d=i*(1-a*e),l=i*(1-(1-a)*e);switch(r%6){case 0:o=i,n=l,s=h;break;case 1:o=d,n=i,s=h;break;case 2:o=h,n=i,s=l;break;case 3:o=h,n=d,s=i;break;case 4:o=l,n=h,s=i;break;case 5:o=i,n=h,s=d}return{r:Math.floor(255*o),g:Math.floor(255*n),b:Math.floor(255*s)}},e.HSVToHex=function(t,i,o){var n=e.HSVToRGB(t,i,o);return e.RGBToHex(n.r,n.g,n.b)},e.hexToHSV=function(t){var i=e.hexToRGB(t);return e.RGBToHSV(i.r,i.g,i.b)},e.isValidHex=function(t){var e=/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(t);return e},e.isValidRGB=function(t){t=t.replace(" ","");var e=/rgb\((\d{1,3}),(\d{1,3}),(\d{1,3})\)/i.test(t);return e},e.isValidRGBA=function(t){t=t.replace(" ","");var e=/rgba\((\d{1,3}),(\d{1,3}),(\d{1,3}),(.{1,3})\)/i.test(t);return e},e.selectiveBridgeObject=function(t,i){if("object"==typeof i){for(var o=Object.create(i),n=0;n=r&&n>s;){var h=Math.floor((r+a)/2),d=t[h],l=void 0===o?d[i]:d[i][o],u=e(l);if(0==u)return h;-1==u?r=h+1:a=h-1,s++}return-1},e.binarySearchValue=function(t,e,i,o){for(var n,s,r,a,h=1e4,d=0,l=0,u=t.length-1;u>=l&&h>d;){if(a=Math.floor(.5*(u+l)),n=t[Math.max(0,a-1)][i],s=t[a][i],r=t[Math.min(t.length-1,a+1)][i],s==e)return a;if(e>n&&s>e)return"before"==o?Math.max(0,a-1):a;if(e>s&&r>e)return"before"==o?a:Math.min(t.length-1,a+1);e>s?l=a+1:u=a-1,d++}return-1},e.easingFunctions={linear:function(t){return t},easeInQuad:function(t){return t*t},easeOutQuad:function(t){return t*(2-t)},easeInOutQuad:function(t){return.5>t?2*t*t:-1+(4-2*t)*t},easeInCubic:function(t){return t*t*t},easeOutCubic:function(t){return--t*t*t+1},easeInOutCubic:function(t){return.5>t?4*t*t*t:(t-1)*(2*t-2)*(2*t-2)+1},easeInQuart:function(t){return t*t*t*t},easeOutQuart:function(t){return 1- --t*t*t*t},easeInOutQuart:function(t){return.5>t?8*t*t*t*t:1-8*--t*t*t*t},easeInQuint:function(t){return t*t*t*t*t},easeOutQuint:function(t){return 1+--t*t*t*t*t},easeInOutQuint:function(t){return.5>t?16*t*t*t*t*t:1+16*--t*t*t*t*t}}},function(t,e,i){t.exports="undefined"!=typeof window&&window.moment||i(9)},function(t,e,i){(function(t){!function(e,i){t.exports=i()}(this,function(){function e(){return Si.apply(null,arguments)}function i(t){Si=t}function o(t){return"[object Array]"===Object.prototype.toString.call(t)}function n(t){return t instanceof Date||"[object Date]"===Object.prototype.toString.call(t)}function s(t,e){var i,o=[];for(i=0;i0)for(i in Ii)o=Ii[i],n=e[o],"undefined"!=typeof n&&(t[o]=n);return t}function f(t){p(this,t),this._d=new Date(+t._d),Ni===!1&&(Ni=!0,e.updateOffset(this),Ni=!1)}function m(t){return t instanceof f||null!=t&&null!=t._isAMomentObject}function v(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 o,n=Math.min(t.length,e.length),s=Math.abs(t.length-e.length),r=0;for(o=0;n>o;o++)(i&&t[o]!==e[o]||!i&&v(t[o])!==v(e[o]))&&r++;return r+s}function y(){}function b(t){return t?t.toLowerCase().replace("_","-"):t}function w(t){for(var e,i,o,n,s=0;s0;){if(o=_(n.slice(0,e).join("-")))return o;if(i&&i.length>=e&&g(n,i,!0)>=e-1)break;e--}s++}return null}function _(e){var i=null;if(!zi[e]&&"undefined"!=typeof t&&t&&t.exports)try{i=Pi._abbr,!function(){var t=new Error('Cannot find module "./locale"');throw t.code="MODULE_NOT_FOUND",t}(),x(i)}catch(o){}return zi[e]}function x(t,e){var i;return t&&(i="undefined"==typeof e?M(t):k(t,e),i&&(Pi=i)),Pi._abbr}function k(t,e){return null!==e?(e.abbr=t,zi[t]||(zi[t]=new y),zi[t].set(e),x(t),zi[t]):(delete zi[t],null)}function M(t){var e;if(t&&t._locale&&t._locale._abbr&&(t=t._locale._abbr),!t)return Pi;if(!o(t)){if(e=_(t))return e;t=[t]}return w(t)}function O(t,e){var i=t.toLowerCase();Ai[i]=Ai[i+"s"]=Ai[e]=t}function D(t){return"string"==typeof t?Ai[t]||Ai[t.toLowerCase()]:void 0}function T(t){var e,i,o={};for(i in t)r(t,i)&&(e=D(i),e&&(o[e]=t[i]));return o}function C(t,i){return function(o){return null!=o?(S(this,t,o),e.updateOffset(this,i),this):E(this,t)}}function E(t,e){return t._d["get"+(t._isUTC?"UTC":"")+e]()}function S(t,e,i){return t._d["set"+(t._isUTC?"UTC":"")+e](i)}function P(t,e){var i;if("object"==typeof t)for(i in t)this.set(i,t[i]);else if(t=D(t),"function"==typeof this[t])return this[t](e);return this}function I(t,e,i){for(var o=""+Math.abs(t),n=t>=0;o.lengthe;e++)Fi[o[e]]?o[e]=Fi[o[e]]:o[e]=z(o[e]);return function(n){var s="";for(e=0;i>e;e++)s+=o[e]instanceof Function?o[e].call(n,t):o[e];return s}}function L(t,e){return t.isValid()?(e=B(e,t.localeData()),Ri[e]||(Ri[e]=A(e)),Ri[e](t)):t.localeData().invalidDate()}function B(t,e){function i(t){return e.longDateFormat(t)||t}var o=5;for(Bi.lastIndex=0;o>=0&&Bi.test(t);)t=t.replace(Bi,i),Bi.lastIndex=0,o-=1;return t}function R(t,e,i){to[t]="function"==typeof e?e:function(t){return t&&i?i:e}}function F(t,e){return r(to,t)?to[t](e._strict,e._locale):new RegExp(j(t))}function j(t){return t.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(t,e,i,o,n){return e||i||o||n}).replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function H(t,e){var i,o=e;for("string"==typeof t&&(t=[t]),"number"==typeof e&&(o=function(t,i){i[e]=v(t)}),i=0;io;o++){if(n=h([2e3,o]),i&&!this._longMonthsParse[o]&&(this._longMonthsParse[o]=new RegExp("^"+this.months(n,"").replace(".","")+"$","i"),this._shortMonthsParse[o]=new RegExp("^"+this.monthsShort(n,"").replace(".","")+"$","i")),i||this._monthsParse[o]||(s="^"+this.months(n,"")+"|^"+this.monthsShort(n,""),this._monthsParse[o]=new RegExp(s.replace(".",""),"i")),i&&"MMMM"===e&&this._longMonthsParse[o].test(t))return o;if(i&&"MMM"===e&&this._shortMonthsParse[o].test(t))return o;if(!i&&this._monthsParse[o].test(t))return o}}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 Z(t){return null!=t?(X(this,t),e.updateOffset(this,!0),this):E(this,"Month")}function K(){return G(this.year(),this.month())}function J(t){var e,i=t._a;return i&&-2===l(t).overflow&&(e=i[oo]<0||i[oo]>11?oo:i[no]<1||i[no]>G(i[io],i[oo])?no:i[so]<0||i[so]>24||24===i[so]&&(0!==i[ro]||0!==i[ao]||0!==i[ho])?so:i[ro]<0||i[ro]>59?ro:i[ao]<0||i[ao]>59?ao:i[ho]<0||i[ho]>999?ho:-1,l(t)._overflowDayOfYear&&(io>e||e>no)&&(e=no),l(t).overflow=e),t}function Q(t){e.suppressDeprecationWarnings===!1&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+t)}function $(t,e){var i=!0,o=t+"\n"+(new Error).stack;return a(function(){return i&&(Q(o),i=!1),e.apply(this,arguments)},e)}function tt(t,e){co[t]||(Q(e),co[t]=!0)}function et(t){var e,i,o=t._i,n=po.exec(o);if(n){for(l(t).iso=!0,e=0,i=fo.length;i>e;e++)if(fo[e][1].exec(o)){t._f=fo[e][0]+(n[6]||" ");break}for(e=0,i=mo.length;i>e;e++)if(mo[e][1].exec(o)){t._f+=mo[e][0];break}o.match(Ji)&&(t._f+="Z"),wt(t)}else t._isValid=!1}function it(t){var i=vo.exec(t._i);return null!==i?void(t._d=new Date(+i[1])):(et(t),void(t._isValid===!1&&(delete t._isValid,e.createFromInputFallback(t))))}function ot(t,e,i,o,n,s,r){var a=new Date(t,e,i,o,n,s,r);return 1970>t&&a.setFullYear(t),a}function nt(t){var e=new Date(Date.UTC.apply(null,arguments));return 1970>t&&e.setUTCFullYear(t),e}function st(t){return rt(t)?366:365}function rt(t){return t%4===0&&t%100!==0||t%400===0}function at(){return rt(this.year())}function ht(t,e,i){var o,n=i-e,s=i-t.day();return s>n&&(s-=7),n-7>s&&(s+=7),o=Tt(t).add(s,"d"),{week:Math.ceil(o.dayOfYear()/7),year:o.year()}}function dt(t){return ht(t,this._week.dow,this._week.doy).week}function lt(){return this._week.dow}function ut(){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=ht(this,1,4).week;return null==t?e:this.add(7*(t-e),"d")}function ft(t,e,i,o,n){var s,r,a=nt(t,0,1).getUTCDay();return a=0===a?7:a,i=null!=i?i:n,s=n-a+(a>o?7:0)-(n>a?7:0),r=7*(e-1)+(i-n)+s+1,{year:r>0?t:t-1,dayOfYear:r>0?r:st(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 vt(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 yt(t){var e,i,o,n,s=[];if(!t._d){for(o=gt(t),t._w&&null==t._a[no]&&null==t._a[oo]&&bt(t),t._dayOfYear&&(n=vt(t._a[io],o[io]),t._dayOfYear>st(n)&&(l(t)._overflowDayOfYear=!0),i=nt(n,0,t._dayOfYear),t._a[oo]=i.getUTCMonth(),t._a[no]=i.getUTCDate()),e=0;3>e&&null==t._a[e];++e)t._a[e]=s[e]=o[e];for(;7>e;e++)t._a[e]=s[e]=null==t._a[e]?2===e?1:0:t._a[e];24===t._a[so]&&0===t._a[ro]&&0===t._a[ao]&&0===t._a[ho]&&(t._nextDay=!0,t._a[so]=0),t._d=(t._useUTC?nt:ot).apply(null,s),null!=t._tzm&&t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),t._nextDay&&(t._a[so]=24)}}function bt(t){var e,i,o,n,s,r,a;e=t._w,null!=e.GG||null!=e.W||null!=e.E?(s=1,r=4,i=vt(e.GG,t._a[io],ht(Tt(),1,4).year),o=vt(e.W,1),n=vt(e.E,1)):(s=t._locale._week.dow,r=t._locale._week.doy,i=vt(e.gg,t._a[io],ht(Tt(),s,r).year),o=vt(e.w,1),null!=e.d?(n=e.d,s>n&&++o):n=null!=e.e?e.e+s:s),a=ft(i,o,n,r,s),t._a[io]=a.year,t._dayOfYear=a.dayOfYear}function wt(t){if(t._f===e.ISO_8601)return void et(t);t._a=[],l(t).empty=!0;var i,o,n,s,r,a=""+t._i,h=a.length,d=0;for(n=B(t._f,t._locale).match(Li)||[],i=0;i0&&l(t).unusedInput.push(r),a=a.slice(a.indexOf(o)+o.length),d+=o.length),Fi[s]?(o?l(t).empty=!1:l(t).unusedTokens.push(s),W(s,o,t)):t._strict&&!o&&l(t).unusedTokens.push(s);l(t).charsLeftOver=h-d,a.length>0&&l(t).unusedInput.push(a),l(t).bigHour===!0&&t._a[so]<=12&&t._a[so]>0&&(l(t).bigHour=void 0),t._a[so]=_t(t._locale,t._a[so],t._meridiem),yt(t),J(t)}function _t(t,e,i){var o;return null==i?e:null!=t.meridiemHour?t.meridiemHour(e,i):null!=t.isPM?(o=t.isPM(i),o&&12>e&&(e+=12),o||12!==e||(e=0),e):e}function xt(t){var e,i,o,n,s;if(0===t._f.length)return l(t).invalidFormat=!0,void(t._d=new Date(NaN));for(n=0;ns)&&(o=s,i=e));a(t,i||e)}function kt(t){if(!t._d){var e=T(t._i);t._a=[e.year,e.month,e.day||e.date,e.hour,e.minute,e.second,e.millisecond],yt(t)}}function Mt(t){var e,i=t._i,s=t._f;return t._locale=t._locale||M(t._l),null===i||void 0===s&&""===i?c({nullInput:!0}):("string"==typeof i&&(t._i=i=t._locale.preparse(i)),m(i)?new f(J(i)):(o(s)?xt(t):s?wt(t):n(i)?t._d=i:Ot(t),e=new f(J(t)),e._nextDay&&(e.add(1,"d"),e._nextDay=void 0),e))}function Ot(t){var i=t._i;void 0===i?t._d=new Date:n(i)?t._d=new Date(+i):"string"==typeof i?it(t):o(i)?(t._a=s(i.slice(0),function(t){return parseInt(t,10)}),yt(t)):"object"==typeof i?kt(t):"number"==typeof i?t._d=new Date(i):e.createFromInputFallback(t)}function Dt(t,e,i,o,n){var s={};return"boolean"==typeof i&&(o=i,i=void 0),s._isAMomentObject=!0,s._useUTC=s._isUTC=n,s._l=i,s._i=t,s._f=e,s._strict=o,Mt(s)}function Tt(t,e,i,o){return Dt(t,e,i,o,!1)}function Ct(t,e){var i,n;if(1===e.length&&o(e[0])&&(e=e[0]),!e.length)return Tt();for(i=e[0],n=1;nt&&(t=-t,i="-"),i+I(~~(t/60),2)+e+I(~~t%60,2)})}function zt(t){var e=(t||"").match(Ji)||[],i=e[e.length-1]||[],o=(i+"").match(_o)||["-",0,0],n=+(60*o[1])+v(o[2]);return"+"===o[0]?n:-n}function At(t,i){var o,s;return i._isUTC?(o=i.clone(),s=(m(t)||n(t)?+t:+Tt(t))-+o,o._d.setTime(+o._d+s),e.updateOffset(o,!1),o):Tt(t).local()}function Lt(t){return 15*-Math.round(t._d.getTimezoneOffset()/15)}function Bt(t,i){var o,n=this._offset||0;return null!=t?("string"==typeof t&&(t=zt(t)),Math.abs(t)<16&&(t=60*t),!this._isUTC&&i&&(o=Lt(this)),this._offset=t,this._isUTC=!0,null!=o&&this.add(o,"m"),n!==t&&(!i||this._changeInProgress?$t(this,Xt(t-n,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,e.updateOffset(this,!0),this._changeInProgress=null)),this):this._isUTC?n:Lt(this)}function Rt(t,e){return null!=t?("string"!=typeof t&&(t=-t),this.utcOffset(t,e),this):-this.utcOffset()}function Ft(t){return this.utcOffset(0,t)}function jt(t){return this._isUTC&&(this.utcOffset(0,t),this._isUTC=!1,t&&this.subtract(Lt(this),"m")),this}function Ht(){return this._tzm?this.utcOffset(this._tzm):"string"==typeof this._i&&this.utcOffset(zt(this._i)),this}function Yt(t){return t=t?Tt(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?h(this._a):Tt(this._a);return this.isValid()&&g(this._a,t.toArray())>0}return!1}function Ut(){return!this._isUTC}function Vt(){return this._isUTC}function qt(){return this._isUTC&&0===this._offset}function Xt(t,e){var i,o,n,s=t,a=null;return It(t)?s={ms:t._milliseconds,d:t._days,M:t._months}:"number"==typeof t?(s={},e?s[e]=t:s.milliseconds=t):(a=xo.exec(t))?(i="-"===a[1]?-1:1,s={y:0,d:v(a[no])*i,h:v(a[so])*i,m:v(a[ro])*i,s:v(a[ao])*i,ms:v(a[ho])*i}):(a=ko.exec(t))?(i="-"===a[1]?-1:1,s={y:Zt(a[2],i),M:Zt(a[3],i),d:Zt(a[4],i),h:Zt(a[5],i),m:Zt(a[6],i),s:Zt(a[7],i),w:Zt(a[8],i)}):null==s?s={}:"object"==typeof s&&("from"in s||"to"in s)&&(n=Jt(Tt(s.from),Tt(s.to)),s={},s.ms=n.milliseconds,s.M=n.months),o=new Pt(s),It(t)&&r(t,"_locale")&&(o._locale=t._locale),o}function Zt(t,e){var i=t&&parseFloat(t.replace(",","."));return(isNaN(i)?0:i)*e}function Kt(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 Jt(t,e){var i;return e=At(e,t),t.isBefore(e)?i=Kt(t,e):(i=Kt(e,t),i.milliseconds=-i.milliseconds,i.months=-i.months),i}function Qt(t,e){return function(i,o){var n,s;return null===o||isNaN(+o)||(tt(e,"moment()."+e+"(period, number) is deprecated. Please use moment()."+e+"(number, period)."),s=i,i=o,o=s),i="string"==typeof i?+i:i,n=Xt(i,o),$t(this,n,t),this}}function $t(t,i,o,n){var s=i._milliseconds,r=i._days,a=i._months;n=null==n?!0:n,s&&t._d.setTime(+t._d+s*o),r&&S(t,"Date",E(t,"Date")+r*o),a&&X(t,E(t,"Month")+a*o),n&&e.updateOffset(t,r||a)}function te(t){var e=t||Tt(),i=At(e,this).startOf("day"),o=this.diff(i,"days",!0),n=-6>o?"sameElse":-1>o?"lastWeek":0>o?"lastDay":1>o?"sameDay":2>o?"nextDay":7>o?"nextWeek":"sameElse";return this.format(this.localeData().calendar(n,this,Tt(e)))}function ee(){return new f(this)}function ie(t,e){var i;return e=D("undefined"!=typeof e?e:"millisecond"),"millisecond"===e?(t=m(t)?t:Tt(t),+this>+t):(i=m(t)?+t:+Tt(t),i<+this.clone().startOf(e))}function oe(t,e){var i;return e=D("undefined"!=typeof e?e:"millisecond"),"millisecond"===e?(t=m(t)?t:Tt(t),+t>+this):(i=m(t)?+t:+Tt(t),+this.clone().endOf(e)t?Math.ceil(t):Math.floor(t)}function ae(t,e,i){var o,n,s=At(t,this),r=6e4*(s.utcOffset()-this.utcOffset());return e=D(e),"year"===e||"month"===e||"quarter"===e?(n=he(this,s),"quarter"===e?n/=3:"year"===e&&(n/=12)):(o=this-s,n="second"===e?o/1e3:"minute"===e?o/6e4:"hour"===e?o/36e5:"day"===e?(o-r)/864e5:"week"===e?(o-r)/6048e5:o),i?n:re(n)}function he(t,e){var i,o,n=12*(e.year()-t.year())+(e.month()-t.month()),s=t.clone().add(n,"months");return 0>e-s?(i=t.clone().add(n-1,"months"),o=(e-s)/(s-i)):(i=t.clone().add(n+1,"months"),o=(e-s)/(i-s)),-(n+o)}function de(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")}function le(){var t=this.clone().utc();return 0e;e++)if(this._weekdaysParse[e]||(i=Tt([2e3,1]).day(e),o="^"+this.weekdays(i,"")+"|^"+this.weekdaysShort(i,"")+"|^"+this.weekdaysMin(i,""),this._weekdaysParse[e]=new RegExp(o.replace(".",""),"i")),this._weekdaysParse[e].test(t))return e}function Fe(t){var e=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=t?(t=ze(t,this.localeData()),this.add(t-e,"d")):e}function je(t){var e=(this.day()+7-this.localeData()._week.dow)%7;return null==t?e:this.add(t-e,"d")}function He(t){return null==t?this.day()||7:this.day(this.day()%7?t:t-7)}function Ye(t,e){N(t,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),e)})}function We(t,e){return e._meridiemParse}function Ge(t){return"p"===(t+"").toLowerCase().charAt(0)}function Ue(t,e,i){return t>11?i?"pm":"PM":i?"am":"AM"}function Ve(t){N(0,[t,3],0,"millisecond")}function qe(){return this._isUTC?"UTC":""}function Xe(){return this._isUTC?"Coordinated Universal Time":""}function Ze(t){return Tt(1e3*t)}function Ke(){return Tt.apply(null,arguments).parseZone()}function Je(t,e,i){var o=this._calendar[t];return"function"==typeof o?o.call(e,i):o}function Qe(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 $e(){return this._invalidDate}function ti(t){return this._ordinal.replace("%d",t)}function ei(t){return t}function ii(t,e,i,o){var n=this._relativeTime[i];return"function"==typeof n?n(t,e,i,o):n.replace(/%d/i,t)}function oi(t,e){var i=this._relativeTime[t>0?"future":"past"];return"function"==typeof i?i(e):i.replace(/%s/i,e)}function ni(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 si(t,e,i,o){var n=M(),s=h().set(o,e);return n[i](s,t)}function ri(t,e,i,o,n){if("number"==typeof t&&(e=t,t=void 0),t=t||"",null!=e)return si(t,e,i,n);var s,r=[];for(s=0;o>s;s++)r[s]=si(t,s,i,n);return r}function ai(t,e){return ri(t,e,"months",12,"month")}function hi(t,e){return ri(t,e,"monthsShort",12,"month")}function di(t,e){return ri(t,e,"weekdays",7,"day")}function li(t,e){return ri(t,e,"weekdaysShort",7,"day")}function ui(t,e){return ri(t,e,"weekdaysMin",7,"day")}function ci(){var t=this._data;return this._milliseconds=Uo(this._milliseconds),this._days=Uo(this._days),this._months=Uo(this._months),t.milliseconds=Uo(t.milliseconds),t.seconds=Uo(t.seconds),t.minutes=Uo(t.minutes),t.hours=Uo(t.hours),t.months=Uo(t.months),t.years=Uo(t.years),this}function pi(t,e,i,o){var n=Xt(e,i);return t._milliseconds+=o*n._milliseconds,t._days+=o*n._days,t._months+=o*n._months,t._bubble()}function fi(t,e){return pi(this,t,e,1)}function mi(t,e){return pi(this,t,e,-1)}function vi(){var t,e,i,o=this._milliseconds,n=this._days,s=this._months,r=this._data,a=0;return r.milliseconds=o%1e3,t=re(o/1e3),r.seconds=t%60,e=re(t/60),r.minutes=e%60,i=re(e/60),r.hours=i%24,n+=re(i/24),a=re(gi(n)),n-=re(yi(a)),s+=re(n/30),n%=30,a+=re(s/12),s%=12,r.days=n,r.months=s,r.years=a,this}function gi(t){return 400*t/146097}function yi(t){return 146097*t/400}function bi(t){var e,i,o=this._milliseconds;if(t=D(t),"month"===t||"year"===t)return e=this._days+o/864e5,i=this._months+12*gi(e),"month"===t?i:i/12;switch(e=this._days+Math.round(yi(this._months/12)),t){case"week":return e/7+o/6048e5;case"day":return e+o/864e5;case"hour":return 24*e+o/36e5;case"minute":return 1440*e+o/6e4;case"second":return 86400*e+o/1e3;case"millisecond":return Math.floor(864e5*e)+o;default:throw new Error("Unknown unit "+t)}}function wi(){return this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*v(this._months/12)}function _i(t){return function(){return this.as(t)}}function xi(t){return t=D(t),this[t+"s"]()}function ki(t){return function(){return this._data[t]}}function Mi(){return re(this.days()/7)}function Oi(t,e,i,o,n){return n.relativeTime(e||1,!!i,t,o)}function Di(t,e,i){var o=Xt(t).abs(),n=hn(o.as("s")),s=hn(o.as("m")),r=hn(o.as("h")),a=hn(o.as("d")),h=hn(o.as("M")),d=hn(o.as("y")),l=n0,l[4]=i,Oi.apply(null,l)}function Ti(t,e){return void 0===dn[t]?!1:void 0===e?dn[t]:(dn[t]=e,!0)}function Ci(t){var e=this.localeData(),i=Di(this,!t,e);return t&&(i=e.pastFuture(+this,i)),e.postformat(i)}function Ei(){var t=ln(this.years()),e=ln(this.months()),i=ln(this.days()),o=ln(this.hours()),n=ln(this.minutes()),s=ln(this.seconds()+this.milliseconds()/1e3),r=this.asSeconds();return r?(0>r?"-":"")+"P"+(t?t+"Y":"")+(e?e+"M":"")+(i?i+"D":"")+(o||n||s?"T":"")+(o?o+"H":"")+(n?n+"M":"")+(s?s+"S":""):"P0D"}var Si,Pi,Ii=e.momentProperties=[],Ni=!1,zi={},Ai={},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,Bi=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,Ri={},Fi={},ji=/\d/,Hi=/\d\d/,Yi=/\d{3}/,Wi=/\d{4}/,Gi=/[+-]?\d{6}/,Ui=/\d\d?/,Vi=/\d{1,3}/,qi=/\d{1,4}/,Xi=/[+-]?\d{1,6}/,Zi=/\d+/,Ki=/[+-]?\d+/,Ji=/Z|[+-]\d\d:?\d\d/gi,Qi=/[+-]?\d+(\.\d{1,3})?/,$i=/[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,to={},eo={},io=0,oo=1,no=2,so=3,ro=4,ao=5,ho=6;N("M",["MM",2],"Mo",function(){return this.month()+1}),N("MMM",0,0,function(t){return this.localeData().monthsShort(this,t)}),N("MMMM",0,0,function(t){return this.localeData().months(this,t)}),O("month","M"),R("M",Ui), -R("MM",Ui,Hi),R("MMM",$i),R("MMMM",$i),H(["M","MM"],function(t,e){e[oo]=v(t)-1}),H(["MMM","MMMM"],function(t,e,i,o){var n=i._locale.monthsParse(t,o,i._strict);null!=n?e[oo]=n:l(i).invalidMonth=t});var lo="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),uo="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),co={};e.suppressDeprecationWarnings=!1;var po=/^\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)?)?$/,fo=[["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}/]],mo=[["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/]],vo=/^\/?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":""))}),N(0,["YY",2],0,function(){return this.year()%100}),N(0,["YYYY",4],0,"year"),N(0,["YYYYY",5],0,"year"),N(0,["YYYYYY",6,!0],0,"year"),O("year","y"),R("Y",Ki),R("YY",Ui,Hi),R("YYYY",qi,Wi),R("YYYYY",Xi,Gi),R("YYYYYY",Xi,Gi),H(["YYYY","YYYYY","YYYYYY"],io),H("YY",function(t,i){i[io]=e.parseTwoDigitYear(t)}),e.parseTwoDigitYear=function(t){return v(t)+(v(t)>68?1900:2e3)};var go=C("FullYear",!1);N("w",["ww",2],"wo","week"),N("W",["WW",2],"Wo","isoWeek"),O("week","w"),O("isoWeek","W"),R("w",Ui),R("ww",Ui,Hi),R("W",Ui),R("WW",Ui,Hi),Y(["w","ww","W","WW"],function(t,e,i,o){e[o.substr(0,1)]=v(t)});var yo={dow:0,doy:6};N("DDD",["DDDD",3],"DDDo","dayOfYear"),O("dayOfYear","DDD"),R("DDD",Vi),R("DDDD",Yi),H(["DDD","DDDD"],function(t,e,i){i._dayOfYear=v(t)}),e.ISO_8601=function(){};var bo=$("moment().min is deprecated, use moment.min instead. https://github.com/moment/moment/issues/1548",function(){var t=Tt.apply(null,arguments);return this>t?this:t}),wo=$("moment().max is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548",function(){var t=Tt.apply(null,arguments);return t>this?this:t});Nt("Z",":"),Nt("ZZ",""),R("Z",Ji),R("ZZ",Ji),H(["Z","ZZ"],function(t,e,i){i._useUTC=!0,i._tzm=zt(t)});var _o=/([\+\-]|\d\d)/gi;e.updateOffset=function(){};var xo=/(\-)?(?:(\d*)\.)?(\d+)\:(\d+)(?:\:(\d+)\.?(\d{3})?)?/,ko=/^(-)?P(?:(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?|([0-9,.]*)W)$/;Xt.fn=Pt.prototype;var Mo=Qt(1,"add"),Oo=Qt(-1,"subtract");e.defaultFormat="YYYY-MM-DDTHH:mm:ssZ";var Do=$("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)});N(0,["gg",2],0,function(){return this.weekYear()%100}),N(0,["GG",2],0,function(){return this.isoWeekYear()%100}),Te("gggg","weekYear"),Te("ggggg","weekYear"),Te("GGGG","isoWeekYear"),Te("GGGGG","isoWeekYear"),O("weekYear","gg"),O("isoWeekYear","GG"),R("G",Ki),R("g",Ki),R("GG",Ui,Hi),R("gg",Ui,Hi),R("GGGG",qi,Wi),R("gggg",qi,Wi),R("GGGGG",Xi,Gi),R("ggggg",Xi,Gi),Y(["gggg","ggggg","GGGG","GGGGG"],function(t,e,i,o){e[o.substr(0,2)]=v(t)}),Y(["gg","GG"],function(t,i,o,n){i[n]=e.parseTwoDigitYear(t)}),N("Q",0,0,"quarter"),O("quarter","Q"),R("Q",ji),H("Q",function(t,e){e[oo]=3*(v(t)-1)}),N("D",["DD",2],"Do","date"),O("date","D"),R("D",Ui),R("DD",Ui,Hi),R("Do",function(t,e){return t?e._ordinalParse:e._ordinalParseLenient}),H(["D","DD"],no),H("Do",function(t,e){e[no]=v(t.match(Ui)[0],10)});var To=C("Date",!0);N("d",0,"do","day"),N("dd",0,0,function(t){return this.localeData().weekdaysMin(this,t)}),N("ddd",0,0,function(t){return this.localeData().weekdaysShort(this,t)}),N("dddd",0,0,function(t){return this.localeData().weekdays(this,t)}),N("e",0,0,"weekday"),N("E",0,0,"isoWeekday"),O("day","d"),O("weekday","e"),O("isoWeekday","E"),R("d",Ui),R("e",Ui),R("E",Ui),R("dd",$i),R("ddd",$i),R("dddd",$i),Y(["dd","ddd","dddd"],function(t,e,i){var o=i._locale.weekdaysParse(t);null!=o?e.d=o:l(i).invalidWeekday=t}),Y(["d","e","E"],function(t,e,i,o){e[o]=v(t)});var Co="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Eo="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),So="Su_Mo_Tu_We_Th_Fr_Sa".split("_");N("H",["HH",2],0,"hour"),N("h",["hh",2],0,function(){return this.hours()%12||12}),Ye("a",!0),Ye("A",!1),O("hour","h"),R("a",We),R("A",We),R("H",Ui),R("h",Ui),R("HH",Ui,Hi),R("hh",Ui,Hi),H(["H","HH"],so),H(["a","A"],function(t,e,i){i._isPm=i._locale.isPM(t),i._meridiem=t}),H(["h","hh"],function(t,e,i){e[so]=v(t),l(i).bigHour=!0});var Po=/[ap]\.?m?\.?/i,Io=C("Hours",!0);N("m",["mm",2],0,"minute"),O("minute","m"),R("m",Ui),R("mm",Ui,Hi),H(["m","mm"],ro);var No=C("Minutes",!1);N("s",["ss",2],0,"second"),O("second","s"),R("s",Ui),R("ss",Ui,Hi),H(["s","ss"],ao);var zo=C("Seconds",!1);N("S",0,0,function(){return~~(this.millisecond()/100)}),N(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),Ve("SSS"),Ve("SSSS"),O("millisecond","ms"),R("S",Vi,ji),R("SS",Vi,Hi),R("SSS",Vi,Yi),R("SSSS",Zi),H(["S","SS","SSS","SSSS"],function(t,e){e[ho]=v(1e3*("0."+t))});var Ao=C("Milliseconds",!1);N("z",0,0,"zoneAbbr"),N("zz",0,0,"zoneName");var Lo=f.prototype;Lo.add=Mo,Lo.calendar=te,Lo.clone=ee,Lo.diff=ae,Lo.endOf=be,Lo.format=ue,Lo.from=ce,Lo.fromNow=pe,Lo.to=fe,Lo.toNow=me,Lo.get=P,Lo.invalidAt=De,Lo.isAfter=ie,Lo.isBefore=oe,Lo.isBetween=ne,Lo.isSame=se,Lo.isValid=Me,Lo.lang=Do,Lo.locale=ve,Lo.localeData=ge,Lo.max=wo,Lo.min=bo,Lo.parsingFlags=Oe,Lo.set=P,Lo.startOf=ye,Lo.subtract=Oo,Lo.toArray=ke,Lo.toDate=xe,Lo.toISOString=le,Lo.toJSON=le,Lo.toString=de,Lo.unix=_e,Lo.valueOf=we,Lo.year=go,Lo.isLeapYear=at,Lo.weekYear=Ee,Lo.isoWeekYear=Se,Lo.quarter=Lo.quarters=Ne,Lo.month=Z,Lo.daysInMonth=K,Lo.week=Lo.weeks=ct,Lo.isoWeek=Lo.isoWeeks=pt,Lo.weeksInYear=Ie,Lo.isoWeeksInYear=Pe,Lo.date=To,Lo.day=Lo.days=Fe,Lo.weekday=je,Lo.isoWeekday=He,Lo.dayOfYear=mt,Lo.hour=Lo.hours=Io,Lo.minute=Lo.minutes=No,Lo.second=Lo.seconds=zo,Lo.millisecond=Lo.milliseconds=Ao,Lo.utcOffset=Bt,Lo.utc=Ft,Lo.local=jt,Lo.parseZone=Ht,Lo.hasAlignedHourOffset=Yt,Lo.isDST=Wt,Lo.isDSTShifted=Gt,Lo.isLocal=Ut,Lo.isUtcOffset=Vt,Lo.isUtc=qt,Lo.isUTC=qt,Lo.zoneAbbr=qe,Lo.zoneName=Xe,Lo.dates=$("dates accessor is deprecated. Use date instead.",To),Lo.months=$("months accessor is deprecated. Use month instead",Z),Lo.years=$("years accessor is deprecated. Use year instead",go),Lo.zone=$("moment().zone is deprecated, use moment().utcOffset instead. https://github.com/moment/moment/issues/1779",Rt);var Bo=Lo,Ro={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},Fo={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"},jo="Invalid date",Ho="%d",Yo=/\d{1,2}/,Wo={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"},Go=y.prototype;Go._calendar=Ro,Go.calendar=Je,Go._longDateFormat=Fo,Go.longDateFormat=Qe,Go._invalidDate=jo,Go.invalidDate=$e,Go._ordinal=Ho,Go.ordinal=ti,Go._ordinalParse=Yo,Go.preparse=ei,Go.postformat=ei,Go._relativeTime=Wo,Go.relativeTime=ii,Go.pastFuture=oi,Go.set=ni,Go.months=U,Go._months=lo,Go.monthsShort=V,Go._monthsShort=uo,Go.monthsParse=q,Go.week=dt,Go._week=yo,Go.firstDayOfYear=ut,Go.firstDayOfWeek=lt,Go.weekdays=Ae,Go._weekdays=Co,Go.weekdaysMin=Be,Go._weekdaysMin=So,Go.weekdaysShort=Le,Go._weekdaysShort=Eo,Go.weekdaysParse=Re,Go.isPM=Ge,Go._meridiemParse=Po,Go.meridiem=Ue,x("en",{ordinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(t){var e=t%10,i=1===v(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.",M);var Uo=Math.abs,Vo=_i("ms"),qo=_i("s"),Xo=_i("m"),Zo=_i("h"),Ko=_i("d"),Jo=_i("w"),Qo=_i("M"),$o=_i("y"),tn=ki("milliseconds"),en=ki("seconds"),on=ki("minutes"),nn=ki("hours"),sn=ki("days"),rn=ki("months"),an=ki("years"),hn=Math.round,dn={s:45,m:45,h:22,d:26,M:11},ln=Math.abs,un=Pt.prototype;un.abs=ci,un.add=fi,un.subtract=mi,un.as=bi,un.asMilliseconds=Vo,un.asSeconds=qo,un.asMinutes=Xo,un.asHours=Zo,un.asDays=Ko,un.asWeeks=Jo,un.asMonths=Qo,un.asYears=$o,un.valueOf=wi,un._bubble=vi,un.get=xi,un.milliseconds=tn,un.seconds=en,un.minutes=on,un.hours=nn,un.days=sn,un.weeks=Mi,un.months=rn,un.years=an,un.humanize=Ci,un.toISOString=Ei,un.toString=Ei,un.toJSON=Ei,un.locale=ve,un.localeData=ge,un.toIsoString=$("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",Ei),un.lang=Do,N("X",0,0,"unix"),N("x",0,0,"valueOf"),R("x",Ki),R("X",Qi),H("X",function(t,e,i){i._d=new Date(1e3*parseFloat(t,10))}),H("x",function(t,e,i){i._d=new Date(v(t))}),e.version="2.10.3",i(Tt),e.fn=Bo,e.min=Et,e.max=St,e.utc=h,e.unix=Ze,e.months=ai,e.isDate=n,e.locale=x,e.invalid=c,e.duration=Xt,e.isMoment=m,e.weekdays=di,e.parseZone=Ke,e.localeData=M,e.isDuration=It,e.monthsShort=hi,e.weekdaysMin=ui,e.defineLocale=k,e.weekdaysShort=li,e.normalizeUnits=D,e.relativeTimeThreshold=Ti;var cn=e;return cn})}).call(e,i(10)(t))},function(t,e,i){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children=[],t.webpackPolyfill=1),t}},function(t,e,i){function o(t){throw new Error("Cannot find module '"+t+"'.")}o.keys=function(){return[]},o.resolve=o,t.exports=o,o.id=11},function(t,e,i){(function(e){function i(t,e,i){var o=e&&i||0,n=0;for(e=e||[],t.toLowerCase().replace(/[0-9a-f]{2}/g,function(t){16>n&&(e[o+n++]=u[t])});16>n;)e[o+n++]=0;return e}function o(t,e){var i=e||0,o=l;return o[t[i++]]+o[t[i++]]+o[t[i++]]+o[t[i++]]+"-"+o[t[i++]]+o[t[i++]]+"-"+o[t[i++]]+o[t[i++]]+"-"+o[t[i++]]+o[t[i++]]+"-"+o[t[i++]]+o[t[i++]]+o[t[i++]]+o[t[i++]]+o[t[i++]]+o[t[i++]]}function n(t,e,i){var n=e&&i||0,s=e||[];t=t||{};var r=void 0!==t.clockseq?t.clockseq:m,a=void 0!==t.msecs?t.msecs:(new Date).getTime(),h=void 0!==t.nsecs?t.nsecs:g+1,d=a-v+(h-g)/1e4;if(0>d&&void 0===t.clockseq&&(r=r+1&16383),(0>d||a>v)&&void 0===t.nsecs&&(h=0),h>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");v=a,g=h,m=r,a+=122192928e5;var l=(1e4*(268435455&a)+h)%4294967296;s[n++]=l>>>24&255,s[n++]=l>>>16&255,s[n++]=l>>>8&255,s[n++]=255&l;var u=a/4294967296*1e4&268435455;s[n++]=u>>>8&255,s[n++]=255&u,s[n++]=u>>>24&15|16,s[n++]=u>>>16&255,s[n++]=r>>>8|128,s[n++]=255&r;for(var c=t.node||f,p=0;6>p;p++)s[n+p]=c[p];return e?e:o(s)}function s(t,e,i){var n=e&&i||0;"string"==typeof t&&(e="binary"==t?new Array(16):null,t=null),t=t||{};var s=t.random||(t.rng||r)();if(s[6]=15&s[6]|64,s[8]=63&s[8]|128,e)for(var a=0;16>a;a++)e[n+a]=s[a];return e||o(s)}var r,a="undefined"!=typeof window?window:"undefined"!=typeof e?e:null;if(a&&a.crypto&&crypto.getRandomValues){var h=new Uint8Array(16);r=function(){return crypto.getRandomValues(h),h}}if(!r){var d=new Array(16);r=function(){for(var t,e=0;16>e;e++)0===(3&e)&&(t=4294967296*Math.random()),d[e]=t>>>((3&e)<<3)&255;return d}}for(var l=[],u={},c=0;256>c;c++)l[c]=(c+256).toString(16).substr(1),u[l[c]]=c;var p=r(),f=[1|p[0],p[1],p[2],p[3],p[4],p[5]],m=16383&(p[6]<<8|p[7]),v=0,g=0,y=s;y.v1=n,y.v4=s,y.parse=i,y.unparse=o,t.exports=y}).call(e,function(){return this}())},function(t,e,i){e.prepareElements=function(t){for(var e in t)t.hasOwnProperty(e)&&(t[e].redundant=t[e].used,t[e].used=[])},e.cleanupElements=function(t){for(var e in t)if(t.hasOwnProperty(e)&&t[e].redundant){for(var i=0;i0?(o=e[t].redundant[0],e[t].redundant.shift()):(o=document.createElementNS("http://www.w3.org/2000/svg",t),i.appendChild(o)):(o=document.createElementNS("http://www.w3.org/2000/svg",t),e[t]={used:[],redundant:[]},i.appendChild(o)),e[t].used.push(o),o},e.getDOMElement=function(t,e,i,o){var n;return e.hasOwnProperty(t)?e[t].redundant.length>0?(n=e[t].redundant[0],e[t].redundant.shift()):(n=document.createElement(t),void 0!==o?i.insertBefore(n,o):i.appendChild(n)):(n=document.createElement(t),e[t]={used:[],redundant:[]},void 0!==o?i.insertBefore(n,o):i.appendChild(n)),e[t].used.push(n),n},e.drawPoint=function(t,i,o,n,s,r){var a;if("circle"==o.options.drawPoints.style?(a=e.getSVGElement("circle",n,s),a.setAttributeNS(null,"cx",t),a.setAttributeNS(null,"cy",i),a.setAttributeNS(null,"r",.5*o.options.drawPoints.size)):(a=e.getSVGElement("rect",n,s),a.setAttributeNS(null,"x",t-.5*o.options.drawPoints.size),a.setAttributeNS(null,"y",i-.5*o.options.drawPoints.size),a.setAttributeNS(null,"width",o.options.drawPoints.size),a.setAttributeNS(null,"height",o.options.drawPoints.size)),void 0!==o.options.drawPoints.styles&&a.setAttributeNS(null,"style",o.group.options.drawPoints.styles),a.setAttributeNS(null,"class",o.className+" vis-point"),r){var h=e.getSVGElement("text",n,s);r.xOffset&&(t+=r.xOffset),r.yOffset&&(i+=r.yOffset),r.content&&(h.textContent=r.content),r.className&&h.setAttributeNS(null,"class",r.className+" vis-label"),h.setAttributeNS(null,"x",t),h.setAttributeNS(null,"y",i)}return a},e.drawBar=function(t,i,o,n,s,r,a,h){if(0!=n){0>n&&(n*=-1,i-=n);var d=e.getSVGElement("rect",r,a);d.setAttributeNS(null,"x",t-.5*o),d.setAttributeNS(null,"y",i),d.setAttributeNS(null,"width",o),d.setAttributeNS(null,"height",n),d.setAttributeNS(null,"class",s),h&&d.setAttributeNS(null,"style",h)}}},function(t,e,i){function o(t,e){if(t&&!Array.isArray(t)&&(e=t,t=null),this._options=e||{},this._data={},this.length=0,this._fieldId=this._options.fieldId||"id",this._type={},this._options.type)for(var i in this._options.type)if(this._options.type.hasOwnProperty(i)){var o=this._options.type[i];"Date"==o||"ISODate"==o||"ASPDate"==o?this._type[i]="Date":this._type[i]=o}if(this._options.convert)throw new Error('Option "convert" is deprecated. Use "type" instead.');this._subscribers={},t&&this.add(t),this.setOptions(e)}var n=i(7),s=i(15);o.prototype.setOptions=function(t){t&&void 0!==t.queue&&(t.queue===!1?this._queue&&(this._queue.destroy(),delete this._queue):(this._queue||(this._queue=s.extend(this,{replace:["add","update","remove"]})),"object"==typeof t.queue&&this._queue.setOptions(t.queue)))},o.prototype.on=function(t,e){var i=this._subscribers[t];i||(i=[],this._subscribers[t]=i),i.push({callback:e})},o.prototype.subscribe=function(){throw new Error("DataSet.subscribe is deprecated. Use DataSet.on instead.")},o.prototype.off=function(t,e){var i=this._subscribers[t];i&&(this._subscribers[t]=i.filter(function(t){return t.callback!=e}))},o.prototype.unsubscribe=function(){throw new Error("DataSet.unsubscribe is deprecated. Use DataSet.off instead.")},o.prototype._trigger=function(t,e,i){if("*"==t)throw new Error("Cannot trigger event *");var o=[];t in this._subscribers&&(o=o.concat(this._subscribers[t])),"*"in this._subscribers&&(o=o.concat(this._subscribers["*"]));for(var n=0;ns;s++)i=n._addItem(t[s]),o.push(i);else{if(!(t instanceof Object))throw new Error("Unknown dataType");i=n._addItem(t),o.push(i)}return o.length&&this._trigger("add",{items:o},e),o},o.prototype.update=function(t,e){var i=[],o=[],n=[],s=this,r=s._fieldId,a=function(t){var e=t[r];s._data[e]?(e=s._updateItem(t),o.push(e),n.push(t)):(e=s._addItem(t),i.push(e))};if(Array.isArray(t))for(var h=0,d=t.length;d>h;h++)a(t[h]);else{if(!(t instanceof Object))throw new Error("Unknown dataType");a(t)}return i.length&&this._trigger("add",{items:i},e),o.length&&this._trigger("update",{items:o,data:n},e),i.concat(o)},o.prototype.get=function(t){var e,i,o,s=this,r=n.getType(arguments[0]);"String"==r||"Number"==r?(e=arguments[0],o=arguments[1]):"Array"==r?(i=arguments[0],o=arguments[1]):o=arguments[0];var a;if(o&&o.returnType){var h=["Array","Object"];a=-1==h.indexOf(o.returnType)?"Array":o.returnType}else a="Array";var d,l,u,c,p=o&&o.type||this._options.type,f=o&&o.filter,m=[];if(void 0!=e)d=s._getItem(e,p),f&&!f(d)&&(d=null);else if(void 0!=i)for(u=0,c=i.length;c>u;u++)d=s._getItem(i[u],p),(!f||f(d))&&m.push(d);else for(l in this._data)this._data.hasOwnProperty(l)&&(d=s._getItem(l,p),(!f||f(d))&&m.push(d));if(o&&o.order&&void 0==e&&this._sort(m,o.order),o&&o.fields){var v=o.fields;if(void 0!=e)d=this._filterFields(d,v);else for(u=0,c=m.length;c>u;u++)m[u]=this._filterFields(m[u],v)}if("Object"==a){var g={};for(u=0;ue;e++)l[e]=s[e][this._fieldId]}else for(o in r)r.hasOwnProperty(o)&&(n=this._getItem(o,d),a(n)&&l.push(n[this._fieldId]));else if(h){s=[];for(o in r)r.hasOwnProperty(o)&&s.push(r[o]);for(this._sort(s,h),e=0,i=s.length;i>e;e++)l[e]=s[e][this._fieldId]}else for(o in r)r.hasOwnProperty(o)&&(n=r[o],l.push(n[this._fieldId]));return l},o.prototype.getDataSet=function(){return this},o.prototype.forEach=function(t,e){var i,o,n=e&&e.filter,s=e&&e.type||this._options.type,r=this._data;if(e&&e.order)for(var a=this.get(e),h=0,d=a.length;d>h;h++)i=a[h],o=i[this._fieldId],t(i,o);else for(o in r)r.hasOwnProperty(o)&&(i=this._getItem(o,s),(!n||n(i))&&t(i,o))},o.prototype.map=function(t,e){var i,o=e&&e.filter,n=e&&e.type||this._options.type,s=[],r=this._data;for(var a in r)r.hasOwnProperty(a)&&(i=this._getItem(a,n),(!o||o(i))&&s.push(t(i,a)));return e&&e.order&&this._sort(s,e.order),s},o.prototype._filterFields=function(t,e){if(!t)return t;var i={};if(Array.isArray(e))for(var o in t)t.hasOwnProperty(o)&&-1!=e.indexOf(o)&&(i[o]=t[o]);else for(var o in t)t.hasOwnProperty(o)&&e.hasOwnProperty(o)&&(i[e[o]]=t[o]);return i},o.prototype._sort=function(t,e){if(n.isString(e)){var i=e;t.sort(function(t,e){var o=t[i],n=e[i];return o>n?1:n>o?-1:0})}else{if("function"!=typeof e)throw new TypeError("Order must be a function or a string");t.sort(e)}},o.prototype.remove=function(t,e){var i,o,n,s=[];if(Array.isArray(t))for(i=0,o=t.length;o>i;i++)n=this._remove(t[i]),null!=n&&s.push(n);else n=this._remove(t),null!=n&&s.push(n);return s.length&&this._trigger("remove",{items:s},e),s},o.prototype._remove=function(t){if(n.isNumber(t)||n.isString(t)){if(this._data[t])return delete this._data[t],this.length--,t}else if(t instanceof Object){var e=t[this._fieldId];if(e&&this._data[e])return delete this._data[e],this.length--,e}return null},o.prototype.clear=function(t){var e=Object.keys(this._data);return this._data={},this.length=0,this._trigger("remove",{items:e},t),e},o.prototype.max=function(t){var e=this._data,i=null,o=null;for(var n in e)if(e.hasOwnProperty(n)){var s=e[n],r=s[t];null!=r&&(!i||r>o)&&(i=s,o=r)}return i},o.prototype.min=function(t){var e=this._data,i=null,o=null;for(var n in e)if(e.hasOwnProperty(n)){var s=e[n],r=s[t];null!=r&&(!i||o>r)&&(i=s,o=r)}return i},o.prototype.distinct=function(t){var e,i=this._data,o=[],s=this._options.type&&this._options.type[t]||null,r=0;for(var a in i)if(i.hasOwnProperty(a)){var h=i[a],d=h[t],l=!1;for(e=0;r>e;e++)if(o[e]==d){l=!0;break}l||void 0===d||(o[r]=d,r++)}if(s)for(e=0;ethis.max&&this.flush(),clearTimeout(this._timeout),this.queue.length>0&&"number"==typeof this.delay){var t=this;this._timeout=setTimeout(function(){t.flush()},this.delay)}},o.prototype.flush=function(){for(;this._queue.length>0;){var t=this._queue.shift();t.fn.apply(t.context||t.fn,t.args||[])}},t.exports=o},function(t,e,i){function o(t,e){this._data=null,this._ids={},this.length=0,this._options=e||{},this._fieldId="id",this._subscribers={};var i=this;this.listener=function(){i._onEvent.apply(i,arguments)},this.setData(t)}var n=i(7),s=i(14);o.prototype.setData=function(t){var e,i,o;if(this._data){this._data.off&&this._data.off("*",this.listener),e=[];for(var n in this._ids)this._ids.hasOwnProperty(n)&&e.push(n);this._ids={},this.length=0,this._trigger("remove",{items:e})}if(this._data=t,this._data){for(this._fieldId=this._options.fieldId||this._data&&this._data.options&&this._data.options.fieldId||"id",e=this._data.getIds({filter:this._options&&this._options.filter}),i=0,o=e.length;o>i;i++)n=e[i],this._ids[n]=!0;this.length=e.length,this._trigger("add",{items:e}),this._data.on&&this._data.on("*",this.listener)}},o.prototype.refresh=function(){for(var t,e=this._data.getIds({filter:this._options&&this._options.filter}),i={},o=[],n=[],s=0;so;o++)s=a[o],r=this.get(s),r&&(this._ids[s]=!0,l.push(s));break;case"update":for(o=0,n=a.length;n>o;o++)s=a[o],r=this.get(s),r?this._ids[s]?(u.push(s),d.push(e.data[o])):(this._ids[s]=!0,l.push(s)):this._ids[s]&&(delete this._ids[s],c.push(s));break;case"remove":for(o=0,n=a.length;n>o;o++)s=a[o],this._ids[s]&&(delete this._ids[s],c.push(s))}this.length+=l.length-c.length,l.length&&this._trigger("add",{items:l},i),u.length&&this._trigger("update",{items:u,data:d},i),c.length&&this._trigger("remove",{items:c},i)}},o.prototype.on=s.prototype.on,o.prototype.off=s.prototype.off,o.prototype._trigger=s.prototype._trigger,o.prototype.subscribe=o.prototype.on,o.prototype.unsubscribe=o.prototype.off,t.exports=o},function(t,e,i){function o(t,e,i){if(!(this instanceof o))throw new SyntaxError("Constructor must be called with the new operator");this.containerElement=t,this.width="400px",this.height="400px",this.margin=10,this.defaultXCenter="55%",this.defaultYCenter="50%",this.xLabel="x",this.yLabel="y",this.zLabel="z";var n=function(t){return t};this.xValueLabel=n,this.yValueLabel=n,this.zValueLabel=n,this.filterLabel="time",this.legendLabel="value",this.style=o.STYLE.DOT,this.showPerspective=!0,this.showGrid=!0,this.keepAspectRatio=!0,this.showShadow=!1,this.showGrayBottom=!1,this.showTooltip=!1,this.verticalRatio=.5,this.animationInterval=1e3,this.animationPreload=!1,this.camera=new c,this.eye=new l(0,0,-1),this.dataTable=null,this.dataPoints=null,this.colX=void 0,this.colY=void 0,this.colZ=void 0,this.colValue=void 0,this.colFilter=void 0,this.xMin=0,this.xStep=void 0,this.xMax=1,this.yMin=0,this.yStep=void 0,this.yMax=1,this.zMin=0,this.zStep=void 0,this.zMax=1,this.valueMin=0,this.valueMax=1,this.xBarWidth=1,this.yBarWidth=1,this.colorAxis="#4D4D4D",this.colorGrid="#D3D3D3",this.colorDot="#7DC1FF",this.colorDotBorder="#3267D2",this.create(),this.setOptions(i),e&&this.setData(e)}function n(t){return"clientX"in t?t.clientX:t.targetTouches[0]&&t.targetTouches[0].clientX||0}function s(t){return"clientY"in t?t.clientY:t.targetTouches[0]&&t.targetTouches[0].clientY||0}var r=i(19),a=i(14),h=i(16),d=i(7),l=i(20),u=i(18),c=i(21),p=i(22),f=i(23),m=i(24);r(o.prototype),o.prototype._setScale=function(){this.scale=new l(1/(this.xMax-this.xMin),1/(this.yMax-this.yMin),1/(this.zMax-this.zMin)),this.keepAspectRatio&&(this.scale.x3&&(this.colFilter=3);else{if(this.style!==o.STYLE.DOTCOLOR&&this.style!==o.STYLE.DOTSIZE&&this.style!==o.STYLE.BARCOLOR&&this.style!==o.STYLE.BARSIZE)throw'Unknown style "'+this.style+'"';this.colX=0,this.colY=1,this.colZ=2,this.colValue=3,t.getNumberOfColumns()>4&&(this.colFilter=4)}},o.prototype.getNumberOfRows=function(t){return t.length},o.prototype.getNumberOfColumns=function(t){var e=0;for(var i in t[0])t[0].hasOwnProperty(i)&&e++;return e},o.prototype.getDistinctValues=function(t,e){for(var i=[],o=0;ot[o][e]&&(i.min=t[o][e]),i.maxt;t++){var f=(t-c)/(p-c),v=240*f,g=this._hsv2rgb(v,1,1);u.strokeStyle=g,u.beginPath(),u.moveTo(h,r+t),u.lineTo(a,r+t),u.stroke()}u.strokeStyle=this.colorAxis,u.strokeRect(h,r,i,s)}if(this.style===o.STYLE.DOTSIZE&&(u.strokeStyle=this.colorAxis,u.fillStyle=this.colorDot,u.beginPath(),u.moveTo(h,r),u.lineTo(a,r),u.lineTo(a-i+e,d),u.lineTo(h,d),u.closePath(),u.fill(),u.stroke()),this.style===o.STYLE.DOTCOLOR||this.style===o.STYLE.DOTSIZE){var y=5,b=new m(this.valueMin,this.valueMax,(this.valueMax-this.valueMin)/5,!0);for(b.start(),b.getCurrent()0?this.yMin:this.yMax,n=this._convert3Dto2D(new l(_,r,this.zMin)),Math.cos(2*w)>0?(v.textAlign="center",v.textBaseline="top",n.y+=b):Math.sin(2*w)<0?(v.textAlign="right",v.textBaseline="middle"):(v.textAlign="left",v.textBaseline="middle"),v.fillStyle=this.colorAxis,v.fillText(" "+this.xValueLabel(i.getCurrent())+" ",n.x,n.y),i.next()}for(v.lineWidth=1,o=void 0===this.defaultYStep,i=new m(this.yMin,this.yMax,this.yStep,o),i.start(),i.getCurrent()0?this.xMin:this.xMax,n=this._convert3Dto2D(new l(s,i.getCurrent(),this.zMin)),Math.cos(2*w)<0?(v.textAlign="center",v.textBaseline="top",n.y+=b):Math.sin(2*w)>0?(v.textAlign="right",v.textBaseline="middle"):(v.textAlign="left",v.textBaseline="middle"),v.fillStyle=this.colorAxis,v.fillText(" "+this.yValueLabel(i.getCurrent())+" ",n.x,n.y),i.next();for(v.lineWidth=1,o=void 0===this.defaultZStep,i=new m(this.zMin,this.zMax,this.zStep,o),i.start(),i.getCurrent()0?this.xMin:this.xMax,r=Math.sin(w)<0?this.yMin:this.yMax;!i.end();)t=this._convert3Dto2D(new l(s,r,i.getCurrent())),v.strokeStyle=this.colorAxis,v.beginPath(),v.moveTo(t.x,t.y),v.lineTo(t.x-b,t.y),v.stroke(),v.textAlign="right",v.textBaseline="middle",v.fillStyle=this.colorAxis,v.fillText(this.zValueLabel(i.getCurrent())+" ",t.x-5,t.y),i.next();v.lineWidth=1,t=this._convert3Dto2D(new l(s,r,this.zMin)),e=this._convert3Dto2D(new l(s,r,this.zMax)),v.strokeStyle=this.colorAxis,v.beginPath(),v.moveTo(t.x,t.y),v.lineTo(e.x,e.y),v.stroke(),v.lineWidth=1,c=this._convert3Dto2D(new l(this.xMin,this.yMin,this.zMin)),p=this._convert3Dto2D(new l(this.xMax,this.yMin,this.zMin)),v.strokeStyle=this.colorAxis,v.beginPath(),v.moveTo(c.x,c.y),v.lineTo(p.x,p.y),v.stroke(),c=this._convert3Dto2D(new l(this.xMin,this.yMax,this.zMin)),p=this._convert3Dto2D(new l(this.xMax,this.yMax,this.zMin)),v.strokeStyle=this.colorAxis,v.beginPath(),v.moveTo(c.x,c.y),v.lineTo(p.x,p.y),v.stroke(),v.lineWidth=1,t=this._convert3Dto2D(new l(this.xMin,this.yMin,this.zMin)),e=this._convert3Dto2D(new l(this.xMin,this.yMax,this.zMin)),v.strokeStyle=this.colorAxis,v.beginPath(),v.moveTo(t.x,t.y),v.lineTo(e.x,e.y),v.stroke(),t=this._convert3Dto2D(new l(this.xMax,this.yMin,this.zMin)),e=this._convert3Dto2D(new l(this.xMax,this.yMax,this.zMin)),v.strokeStyle=this.colorAxis,v.beginPath(),v.moveTo(t.x,t.y),v.lineTo(e.x,e.y),v.stroke();var x=this.xLabel;x.length>0&&(u=.1/this.scale.y,s=(this.xMin+this.xMax)/2,r=Math.cos(w)>0?this.yMin-u:this.yMax+u,n=this._convert3Dto2D(new l(s,r,this.zMin)),Math.cos(2*w)>0?(v.textAlign="center",v.textBaseline="top"):Math.sin(2*w)<0?(v.textAlign="right",v.textBaseline="middle"):(v.textAlign="left",v.textBaseline="middle"),v.fillStyle=this.colorAxis,v.fillText(x,n.x,n.y));var k=this.yLabel;k.length>0&&(d=.1/this.scale.x,s=Math.sin(w)>0?this.xMin-d:this.xMax+d,r=(this.yMin+this.yMax)/2,n=this._convert3Dto2D(new l(s,r,this.zMin)),Math.cos(2*w)<0?(v.textAlign="center",v.textBaseline="top"):Math.sin(2*w)>0?(v.textAlign="right",v.textBaseline="middle"):(v.textAlign="left",v.textBaseline="middle"),v.fillStyle=this.colorAxis,v.fillText(k,n.x,n.y));var M=this.zLabel;M.length>0&&(h=30,s=Math.cos(w)>0?this.xMin:this.xMax,r=Math.sin(w)<0?this.yMin:this.yMax,a=(this.zMin+this.zMax)/2,n=this._convert3Dto2D(new l(s,r,a)),v.textAlign="right",v.textBaseline="middle",v.fillStyle=this.colorAxis,v.fillText(M,n.x-h,n.y))},o.prototype._hsv2rgb=function(t,e,i){var o,n,s,r,a,h;switch(r=i*e,a=Math.floor(t/60),h=r*(1-Math.abs(t/60%2-1)),a){case 0:o=r,n=h,s=0;break;case 1:o=h,n=r,s=0;break;case 2:o=0,n=r,s=h;break;case 3:o=0,n=h,s=r;break;case 4:o=h,n=0,s=r;break;case 5:o=r,n=0,s=h;break;default:o=0,n=0,s=0}return"RGB("+parseInt(255*o)+","+parseInt(255*n)+","+parseInt(255*s)+")"},o.prototype._redrawDataGrid=function(){var t,e,i,n,s,r,a,h,d,u,c,p,f,m=this.frame.canvas,v=m.getContext("2d");if(!(void 0===this.dataPoints||this.dataPoints.length<=0)){for(s=0;s0}else r=!0;r?(f=(t.point.z+e.point.z+i.point.z+n.point.z)/4,u=240*(1-(f-this.zMin)*this.scale.z/this.verticalRatio),c=1,this.showShadow?(p=Math.min(1+k.x/M/2,1),a=this._hsv2rgb(u,c,p),h=a):(p=1,a=this._hsv2rgb(u,c,p),h=this.colorAxis)):(a="gray",h=this.colorAxis),d=.5,v.lineWidth=d,v.fillStyle=a,v.strokeStyle=h,v.beginPath(),v.moveTo(t.screen.x,t.screen.y),v.lineTo(e.screen.x,e.screen.y),v.lineTo(n.screen.x,n.screen.y),v.lineTo(i.screen.x,i.screen.y),v.closePath(),v.fill(),v.stroke()}}else for(s=0;sc&&(c=0);var p,f,m;this.style===o.STYLE.DOTCOLOR?(p=240*(1-(d.point.value-this.valueMin)*this.scale.value),f=this._hsv2rgb(p,1,1),m=this._hsv2rgb(p,1,.8)):this.style===o.STYLE.DOTSIZE?(f=this.colorDot,m=this.colorDotBorder):(p=240*(1-(d.point.z-this.zMin)*this.scale.z/this.verticalRatio),f=this._hsv2rgb(p,1,1),m=this._hsv2rgb(p,1,.8)),i.lineWidth=1,i.strokeStyle=m,i.fillStyle=f,i.beginPath(),i.arc(d.screen.x,d.screen.y,c,0,2*Math.PI,!0),i.fill(),i.stroke()}}},o.prototype._redrawDataBar=function(){var t,e,i,n,s=this.frame.canvas,r=s.getContext("2d");if(!(void 0===this.dataPoints||this.dataPoints.length<=0)){for(t=0;t0&&(t=this.dataPoints[0],o.lineWidth=1,o.strokeStyle="blue",o.beginPath(),o.moveTo(t.screen.x,t.screen.y)),e=1;e0&&o.stroke()}},o.prototype._onMouseDown=function(t){if(t=t||window.event,this.leftButtonDown&&this._onMouseUp(t),this.leftButtonDown=t.which?1===t.which:1===t.button,this.leftButtonDown||this.touchDown){this.startMouseX=n(t),this.startMouseY=s(t),this.startStart=new Date(this.start),this.startEnd=new Date(this.end),this.startArmRotation=this.camera.getArmRotation(),this.frame.style.cursor="move";var e=this;this.onmousemove=function(t){e._onMouseMove(t)},this.onmouseup=function(t){e._onMouseUp(t)},d.addEventListener(document,"mousemove",e.onmousemove),d.addEventListener(document,"mouseup",e.onmouseup),d.preventDefault(t)}},o.prototype._onMouseMove=function(t){t=t||window.event;var e=parseFloat(n(t))-this.startMouseX,i=parseFloat(s(t))-this.startMouseY,o=this.startArmRotation.horizontal+e/200,r=this.startArmRotation.vertical+i/200,a=4,h=Math.sin(a/360*2*Math.PI);Math.abs(Math.sin(o))0?1:0>t?-1:0}var o=e[0],n=e[1],s=e[2],r=i((n.x-o.x)*(t.y-o.y)-(n.y-o.y)*(t.x-o.x)),a=i((s.x-n.x)*(t.y-n.y)-(s.y-n.y)*(t.x-n.x)),h=i((o.x-s.x)*(t.y-s.y)-(o.y-s.y)*(t.x-s.x));return!(0!=r&&0!=a&&r!=a||0!=a&&0!=h&&a!=h||0!=r&&0!=h&&r!=h)},o.prototype._dataPointFromXY=function(t,e){var i,n=100,s=null,r=null,a=null,h=new u(t,e);if(this.style===o.STYLE.BAR||this.style===o.STYLE.BARCOLOR||this.style===o.STYLE.BARSIZE)for(i=this.dataPoints.length-1;i>=0;i--){s=this.dataPoints[i];var d=s.surfaces;if(d)for(var l=d.length-1;l>=0;l--){var c=d[l],p=c.corners,f=[p[0].screen,p[1].screen,p[2].screen],m=[p[2].screen,p[3].screen,p[0].screen];if(this._insideTriangle(h,f)||this._insideTriangle(h,m))return s}}else for(i=0;ib)&&n>b&&(a=b,r=s)}}return r},o.prototype._showTooltip=function(t){var e,i,o;this.tooltip?(e=this.tooltip.dom.content,i=this.tooltip.dom.line,o=this.tooltip.dom.dot):(e=document.createElement("div"),e.style.position="absolute",e.style.padding="10px",e.style.border="1px solid #4d4d4d",e.style.color="#1a1a1a",e.style.background="rgba(255,255,255,0.7)",e.style.borderRadius="2px",e.style.boxShadow="5px 5px 10px rgba(128,128,128,0.5)",i=document.createElement("div"),i.style.position="absolute",i.style.height="40px",i.style.width="0",i.style.borderLeft="1px solid #4d4d4d",o=document.createElement("div"),o.style.position="absolute",o.style.height="0",o.style.width="0",o.style.border="5px solid #4d4d4d",o.style.borderRadius="5px",this.tooltip={dataPoint:null,dom:{content:e,line:i,dot:o}}),this._hideTooltip(),this.tooltip.dataPoint=t,"function"==typeof this.showTooltip?e.innerHTML=this.showTooltip(t.point):e.innerHTML="
x:"+t.point.x+"
y:"+t.point.y+"
z:"+t.point.z+"
",e.style.left="0",e.style.top="0",this.frame.appendChild(e),this.frame.appendChild(i),this.frame.appendChild(o);var n=e.offsetWidth,s=e.offsetHeight,r=i.offsetHeight,a=o.offsetWidth,h=o.offsetHeight,d=t.screen.x-n/2;d=Math.min(Math.max(d,10),this.frame.clientWidth-10-n),i.style.left=t.screen.x+"px",i.style.top=t.screen.y-r+"px",e.style.left=d+"px",e.style.top=t.screen.y-r-s+"px",o.style.left=t.screen.x-a/2+"px",o.style.top=t.screen.y-h/2+"px"},o.prototype._hideTooltip=function(){if(this.tooltip){this.tooltip.dataPoint=null;for(var t in this.tooltip.dom)if(this.tooltip.dom.hasOwnProperty(t)){var e=this.tooltip.dom[t];e&&e.parentNode&&e.parentNode.removeChild(e)}}},t.exports=o},function(t,e,i){function o(t,e){this.x=void 0!==t?t:0,this.y=void 0!==e?e:0}t.exports=o},function(t,e,i){function o(t){return t?n(t):void 0}function n(t){for(var e in o.prototype)t[e]=o.prototype[e];return t}t.exports=o,o.prototype.on=o.prototype.addEventListener=function(t,e){return this._callbacks=this._callbacks||{},(this._callbacks[t]=this._callbacks[t]||[]).push(e),this},o.prototype.once=function(t,e){function i(){o.off(t,i),e.apply(this,arguments)}var o=this;return this._callbacks=this._callbacks||{},i.fn=e,this.on(t,i),this},o.prototype.off=o.prototype.removeListener=o.prototype.removeAllListeners=o.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 o,n=0;no;++o)i[o].apply(this,e)}return this},o.prototype.listeners=function(t){return this._callbacks=this._callbacks||{},this._callbacks[t]||[]},o.prototype.hasListeners=function(t){return!!this.listeners(t).length}},function(t,e,i){function o(t,e,i){this.x=void 0!==t?t:0,this.y=void 0!==e?e:0,this.z=void 0!==i?i:0}o.subtract=function(t,e){var i=new o;return i.x=t.x-e.x,i.y=t.y-e.y,i.z=t.z-e.z,i},o.add=function(t,e){var i=new o;return i.x=t.x+e.x,i.y=t.y+e.y,i.z=t.z+e.z,i},o.avg=function(t,e){return new o((t.x+e.x)/2,(t.y+e.y)/2,(t.z+e.z)/2)},o.crossProduct=function(t,e){var i=new o;return i.x=t.y*e.z-t.z*e.y,i.y=t.z*e.x-t.x*e.z,i.z=t.x*e.y-t.y*e.x,i},o.prototype.length=function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)},t.exports=o},function(t,e,i){function o(){this.armLocation=new n,this.armRotation={},this.armRotation.horizontal=0,this.armRotation.vertical=0,this.armLength=1.7,this.cameraLocation=new n,this.cameraRotation=new n(.5*Math.PI,0,0),this.calculateCameraOrientation()}var n=i(20);o.prototype.setArmLocation=function(t,e,i){this.armLocation.x=t,this.armLocation.y=e,this.armLocation.z=i,this.calculateCameraOrientation()},o.prototype.setArmRotation=function(t,e){void 0!==t&&(this.armRotation.horizontal=t),void 0!==e&&(this.armRotation.vertical=e,this.armRotation.vertical<0&&(this.armRotation.vertical=0),this.armRotation.vertical>.5*Math.PI&&(this.armRotation.vertical=.5*Math.PI)),(void 0!==t||void 0!==e)&&this.calculateCameraOrientation()},o.prototype.getArmRotation=function(){var t={};return t.horizontal=this.armRotation.horizontal,t.vertical=this.armRotation.vertical,t},o.prototype.setArmLength=function(t){void 0!==t&&(this.armLength=t,this.armLength<.71&&(this.armLength=.71),this.armLength>5&&(this.armLength=5),this.calculateCameraOrientation())},o.prototype.getArmLength=function(){return this.armLength},o.prototype.getCameraLocation=function(){return this.cameraLocation},o.prototype.getCameraRotation=function(){return this.cameraRotation},o.prototype.calculateCameraOrientation=function(){this.cameraLocation.x=this.armLocation.x-this.armLength*Math.sin(this.armRotation.horizontal)*Math.cos(this.armRotation.vertical),this.cameraLocation.y=this.armLocation.y-this.armLength*Math.cos(this.armRotation.horizontal)*Math.cos(this.armRotation.vertical),this.cameraLocation.z=this.armLocation.z+this.armLength*Math.sin(this.armRotation.vertical),this.cameraRotation.x=Math.PI/2-this.armRotation.vertical,this.cameraRotation.y=0,this.cameraRotation.z=-this.armRotation.horizontal},t.exports=o},function(t,e,i){function o(t,e,i){this.data=t,this.column=e,this.graph=i,this.index=void 0,this.value=void 0,this.values=i.getDistinctValues(t.get(),this.column),this.values.sort(function(t,e){return t>e?1:e>t?-1:0}),this.values.length>0&&this.selectValue(0),this.dataPoints=[],this.loaded=!1,this.onLoadCallback=void 0,i.animationPreload?(this.loaded=!1,this.loadInBackground()):this.loaded=!0}var n=i(16);o.prototype.isLoaded=function(){return this.loaded},o.prototype.getLoadedProgress=function(){for(var t=this.values.length,e=0;this.dataPoints[e];)e++;return Math.round(e/t*100)},o.prototype.getLabel=function(){return this.graph.filterLabel},o.prototype.getColumn=function(){return this.column},o.prototype.getSelectedValue=function(){ -return void 0===this.index?void 0:this.values[this.index]},o.prototype.getValues=function(){return this.values},o.prototype.getValue=function(t){if(t>=this.values.length)throw"Error: index out of range";return this.values[t]},o.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 o=new n(this.data,{filter:function(t){return t[i.column]==i.value}}).get();e=this.graph._getDataPoints(o),this.dataPoints[t]=e}return e},o.prototype.setOnLoadCallback=function(t){this.onLoadCallback=t},o.prototype.selectValue=function(t){if(t>=this.values.length)throw"Error: index out of range";this.index=t,this.value=this.values[t]},o.prototype.loadInBackground=function(t){void 0===t&&(t=0);var e=this.graph.frame;if(t0&&(t--,this.setIndex(t))},o.prototype.next=function(){var t=this.getIndex();t0?this.setIndex(0):this.index=void 0},o.prototype.setIndex=function(t){if(!(to&&(o=0),o>this.values.length-1&&(o=this.values.length-1),o},o.prototype.indexToLeft=function(t){var e=parseFloat(this.frame.bar.style.width)-this.frame.slide.clientWidth-10,i=t/(this.values.length-1)*e,o=i+3;return o},o.prototype._onMouseMove=function(t){var e=t.clientX-this.startClientX,i=this.startSlideX+e,o=this.leftToIndex(i);this.setIndex(o),n.preventDefault()},o.prototype._onMouseUp=function(t){this.frame.style.cursor="auto",n.removeEventListener(document,"mousemove",this.onmousemove),n.removeEventListener(document,"mouseup",this.onmouseup),n.preventDefault()},t.exports=o},function(t,e,i){function o(t,e,i,o){this._start=0,this._end=0,this._step=1,this.prettyStep=!0,this.precision=5,this._current=0,this.setRange(t,e,i,o)}o.prototype.setRange=function(t,e,i,o){this._start=t?t:0,this._end=e?e:0,this.setStep(i,o)},o.prototype.setStep=function(t,e){void 0===t||0>=t||(void 0!==e&&(this.prettyStep=e),this.prettyStep===!0?this._step=o.calculatePrettyStep(t):this._step=t)},o.calculatePrettyStep=function(t){var e=function(t){return Math.log(t)/Math.LN10},i=Math.pow(10,Math.round(e(t))),o=2*Math.pow(10,Math.round(e(t/2))),n=5*Math.pow(10,Math.round(e(t/5))),s=i;return Math.abs(o-t)<=Math.abs(s-t)&&(s=o),Math.abs(n-t)<=Math.abs(s-t)&&(s=n),0>=s&&(s=1),s},o.prototype.getCurrent=function(){return parseFloat(this._current.toPrecision(this.precision))},o.prototype.getStep=function(){return this._step},o.prototype.start=function(){this._current=this._start-this._start%this._step},o.prototype.next=function(){this._current+=this._step},o.prototype.end=function(){return this._current>this._end},t.exports=o},function(t,e,i){function o(t,e,i,h){if(!(this instanceof o))throw new SyntaxError("Constructor must be called with the new operator");if(!(Array.isArray(i)||i instanceof s||i instanceof r)&&i instanceof Object){var u=h;h=i,i=u}var f=this;this.defaultOptions={start:null,end:null,autoResize:!0,orientation:{axis:"bottom",item:"bottom"},width:null,height:null,maxHeight:null,minHeight:null},this.options=n.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 f.timeAxis.step.scale},getStep:function(){return f.timeAxis.step.step},toScreen:f._toScreen.bind(f),toGlobalScreen:f._toGlobalScreen.bind(f),toTime:f._toTime.bind(f),toGlobalTime:f._toGlobalTime.bind(f)}},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.itemSet=new c(this.body),this.components.push(this.itemSet),this.itemsData=null,this.groupsData=null,this.on("tap",function(t){f.emit("click",f.getEventProperties(t))}),this.on("doubletap",function(t){f.emit("doubleClick",f.getEventProperties(t))}),this.dom.root.oncontextmenu=function(t){f.emit("contextmenu",f.getEventProperties(t))},this.configurator=new p(this,t,g),h&&this.setOptions(h),i&&this.setGroups(i),e?this.setItems(e):this._redraw()}var n=(i(19),i(3),i(7)),s=i(14),r=i(16),a=i(29),h=i(32),d=i(41),l=i(26),u=i(44),c=i(33),p=i(45),f=i(47)["default"],m=i(47).printStyle,v=i(48).allOptions,g=i(48).configureOptions;o.prototype=new h,o.prototype.redraw=function(){this.itemSet&&this.itemSet.markDirty({refreshItems:!0}),this._redraw()},o.prototype.setOptions=function(t){var e=f.validate(t,v);if(e===!0&&console.log("%cErrors have been found in the supplied options object.",m),h.prototype.setOptions.call(this,t),"type"in t&&t.type!==this.options.type){this.options.type=t.type;var i=this.itemsData;if(i){var o=this.getSelection();this.setItems(null),this.setItems(i),this.setSelection(o)}}},o.prototype.setItems=function(t){var e,i=null==this.itemsData;if(e=t?t instanceof s||t instanceof r?t:new s(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 o=this._getDataRange();var n=void 0!=this.options.start?this.options.start:o.start,a=void 0!=this.options.end?this.options.end:o.end;this.setWindow(n,a,{animation:!1})}else this.fit({animation:!1})},o.prototype.setGroups=function(t){var e;e=t?t instanceof s||t instanceof r?t:new s(t):null,this.groupsData=e,this.itemSet.setGroups(e)},o.prototype.setData=function(t){t&&t.groups&&this.setGroups(t.groups),t&&t.items&&this.setItems(t.items)},o.prototype.setSelection=function(t,e){this.itemSet&&this.itemSet.setSelection(t),e&&e.focus&&this.focus(t,e)},o.prototype.getSelection=function(){return this.itemSet&&this.itemSet.getSelection()||[]},o.prototype.focus=function(t,e){if(this.itemsData&&void 0!=t){var i=Array.isArray(t)?t:[t],o=this.itemsData.getDataSet().get(i,{type:{start:"Date",end:"Date"}}),n=null,s=null;if(o.forEach(function(t){var e=t.start.valueOf(),i="end"in t?t.end.valueOf():t.start.valueOf();(null===n||n>e)&&(n=e),(null===s||i>s)&&(s=i)}),null!==n&&null!==s){var r=(n+s)/2,a=Math.max(this.range.end-this.range.start,1.1*(s-n)),h=e&&void 0!==e.animation?e.animation:!0;this.range.setRange(r-a/2,r+a/2,h)}}},o.prototype.getItemRange=function(){var t=this.itemsData&&this.itemsData.getDataSet(),e=null,i=null;if(t){var o=t.min("start");e=o?n.convert(o.start,"Date").valueOf():null;var s=t.max("start");s&&(i=n.convert(s.start,"Date").valueOf());var r=t.max("end");r&&(i=null==i?n.convert(r.end,"Date").valueOf():Math.max(i,n.convert(r.end,"Date").valueOf()))}return{min:null!=e?new Date(e):null,max:null!=i?new Date(i):null}},o.prototype.getEventProperties=function(t){var e=t.center?t.center.x:t.clientX,i=t.center?t.center.y:t.clientY,o=e-n.getAbsoluteLeft(this.dom.centerContainer),s=i-n.getAbsoluteTop(this.dom.centerContainer),r=this.itemSet.itemFromTarget(t),a=this.itemSet.groupFromTarget(t),h=u.customTimeFromTarget(t),d=this.itemSet.options.snap||null,l=this.body.util.getScale(),c=this.body.util.getStep(),p=this._toTime(o),f=d?d(p,l,c):p,m=n.getTarget(t),v=null;return null!=r?v="item":null!=h?v="custom-time":n.hasParent(m,this.timeAxis.dom.foreground)?v="axis":this.timeAxis2&&n.hasParent(m,this.timeAxis2.dom.foreground)?v="axis":n.hasParent(m,this.itemSet.dom.labelSet)?v="group-label":n.hasParent(m,this.currentTime.bar)?v="current-time":n.hasParent(m,this.dom.center)&&(v="background"),{event:t,item:r?r.id:null,group:a?a.groupId:null,what:v,pageX:t.srcEvent?t.srcEvent.pageX:t.pageX,pageY:t.srcEvent?t.srcEvent.pageY:t.pageY,x:o,y:s,time:p,snappedTime:f}},t.exports=o},function(t,e,i){function o(t,e){this.body=t,this.defaultOptions={showCurrentTime:!0,locales:a,locale:"en"},this.options=n.extend({},this.defaultOptions),this.offset=0,this._create(),this.setOptions(e)}var n=i(7),s=i(27),r=i(8),a=i(28);o.prototype=new s,o.prototype._create=function(){var t=document.createElement("div");t.className="vis-current-time",t.style.position="absolute",t.style.top="0px",t.style.height="100%",this.bar=t},o.prototype.destroy=function(){this.options.showCurrentTime=!1,this.redraw(),this.body=null},o.prototype.setOptions=function(t){t&&n.selectiveExtend(["showCurrentTime","locale","locales"],this.options,t)},o.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),o=this.options.locales[this.options.locale];o||(this.warned||(console.log("WARNING: options.locales['"+this.options.locale+"'] not found. See http://visjs.org/docs/timeline.html#Localization"),this.warned=!0),o=this.options.locales.en);var n=o.current+" "+o.time+": "+r(e).format("dddd, MMMM Do YYYY, H:mm:ss");n=n.charAt(0).toUpperCase()+n.substring(1),this.bar.style.left=i+"px",this.bar.title=n}else this.bar.parentNode&&this.bar.parentNode.removeChild(this.bar),this.stop();return!1},o.prototype.start=function(){function t(){e.stop();var i=e.body.range.conversion(e.body.domProps.center.width).scale,o=1/i/10;30>o&&(o=30),o>1e3&&(o=1e3),e.redraw(),e.currentTimeTimer=setTimeout(t,o)}var e=this;t()},o.prototype.stop=function(){void 0!==this.currentTimeTimer&&(clearTimeout(this.currentTimeTimer),delete this.currentTimeTimer)},o.prototype.setCurrentTime=function(t){var e=n.convert(t,"Date").valueOf(),i=(new Date).valueOf();this.offset=e-i,this.redraw()},o.prototype.getCurrentTime=function(){return new Date((new Date).valueOf()+this.offset)},t.exports=o},function(t,e,i){function o(t,e){this.options=null,this.props=null}o.prototype.setOptions=function(t){t&&util.extend(this.options,t)},o.prototype.redraw=function(){return!1},o.prototype.destroy=function(){},o.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=o},function(t,e,i){e.en={current:"current",time:"time"},e.en_EN=e.en,e.en_US=e.en,e.nl={current:"huidige",time:"tijd"},e.nl_NL=e.nl,e.nl_BE=e.nl},function(t,e,i){function o(t,e){var i=a().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.animationTimer=null,this.body.emitter.on("panstart",this._onDragStart.bind(this)),this.body.emitter.on("panmove",this._onDrag.bind(this)),this.body.emitter.on("panend",this._onDragEnd.bind(this)),this.body.emitter.on("mousewheel",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 n(t){if("horizontal"!=t&&"vertical"!=t)throw new TypeError('Unknown direction "'+t+'". Choose "horizontal" or "vertical".')}function s(t,e){return{x:t.x-r.getAbsoluteLeft(e),y:t.y-r.getAbsoluteTop(e)}}var r=i(7),a=(i(30),i(8)),h=i(27),d=i(31);o.prototype=new h,o.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)}},o.prototype.setRange=function(t,e,i,o){o!==!0&&(o=!1);var n=void 0!=t?r.convert(t,"Date").valueOf():null,s=void 0!=e?r.convert(e,"Date").valueOf():null;if(this._cancelAnimation(),i){var a=this,h=this.start,l=this.end,u="object"==typeof i&&"duration"in i?i.duration:500,c="object"==typeof i&&"easingFunction"in i?i.easingFunction:"easeInOutQuad",p=r.easingFunctions[c];if(!p)throw new Error("Unknown easing function "+JSON.stringify(c)+". Choose from: "+Object.keys(r.easingFunctions).join(", "));var f=(new Date).valueOf(),m=!1,v=function b(){if(!a.props.touch.dragging){var t=(new Date).valueOf(),e=t-f,i=p(e/u),r=e>u,c=r||null===n?n:h+(n-h)*i,v=r||null===s?s:l+(s-l)*i;g=a._applyRange(c,v),d.updateHiddenDates(a.body,a.options.hiddenDates),m=m||g,g&&a.body.emitter.emit("rangechange",{start:new Date(a.start),end:new Date(a.end),byUser:o}),r?m&&a.body.emitter.emit("rangechanged",{start:new Date(a.start),end:new Date(a.end),byUser:o}):a.animationTimer=setTimeout(b,20)}};return v()}var g=this._applyRange(n,s);if(d.updateHiddenDates(this.body,this.options.hiddenDates),g){var y={start:new Date(this.start),end:new Date(this.end),byUser:o};this.body.emitter.emit("rangechange",y),this.body.emitter.emit("rangechanged",y)}},o.prototype._cancelAnimation=function(){this.animationTimer&&(clearTimeout(this.animationTimer),this.animationTimer=null)},o.prototype._applyRange=function(t,e){var i,o=null!=t?r.convert(t,"Date").valueOf():this.start,n=null!=e?r.convert(e,"Date").valueOf():this.end,s=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(o)||null===o)throw new Error('Invalid start "'+t+'"');if(isNaN(n)||null===n)throw new Error('Invalid end "'+e+'"');if(o>n&&(n=o),null!==a&&a>o&&(i=a-o,o+=i,n+=i,null!=s&&n>s&&(n=s)),null!==s&&n>s&&(i=n-s,o-=i,n-=i,null!=a&&a>o&&(o=a)),null!==this.options.zoomMin){var h=parseFloat(this.options.zoomMin);0>h&&(h=0),h>n-o&&(this.end-this.start===h&&o>this.start&&nd&&(d=0),n-o>d&&(this.end-this.start===d&&othis.end?(o=this.start,n=this.end):(i=n-o-d,o+=i/2,n-=i/2))}var l=this.start!=o||this.end!=n;return o>=this.start&&o<=this.end||n>=this.start&&n<=this.end||this.start>=o&&this.start<=n||this.end>=o&&this.end<=n||this.body.emitter.emit("checkRangedItems"),this.start=o,this.end=n,l},o.prototype.getRange=function(){return{start:this.start,end:this.end}},o.prototype.conversion=function(t,e){return o.conversion(this.start,this.end,t,e)},o.conversion=function(t,e,i,o){return void 0===o&&(o=0),0!=i&&e-t!=0?{offset:t,scale:i/(e-t-o)}:{offset:0,scale:1}},o.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"))},o.prototype._onDrag=function(t){if(this.options.moveable&&this.props.touch.allowDragging){var e=this.options.direction;n(e);var i="horizontal"==e?t.deltaX:t.deltaY;i-=this.deltaDifference;var o=this.props.touch.end-this.props.touch.start,s=d.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end);o-=s;var r="horizontal"==e?this.body.domProps.center.width:this.body.domProps.center.height,a=-i/r*o,h=this.props.touch.start+a,l=this.props.touch.end+a,u=d.snapAwayFromHidden(this.body.hiddenDates,h,this.previousDelta-i,!0),c=d.snapAwayFromHidden(this.body.hiddenDates,l,this.previousDelta-i,!0);if(u!=h||c!=l)return this.deltaDifference+=i,this.props.touch.start=u,this.props.touch.end=c,void this._onDrag(t);this.previousDelta=i,this._applyRange(h,l),this.body.emitter.emit("rangechange",{start:new Date(this.start),end:new Date(this.end),byUser:!0})}},o.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}))},o.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 o=s({x:t.clientX,y:t.clientY},this.body.dom.center),n=this._pointerToDate(o);this.zoom(i,n,e)}t.preventDefault()}},o.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},o.prototype._onPinch=function(t){if(this.options.zoomable&&this.options.moveable){this.props.touch.allowDragging=!1,this.props.touch.center||(this.props.touch.center=s(t.center,this.body.dom.center));var e=1/(t.scale+this.scaleOffset),i=this._pointerToDate(this.props.touch.center),o=d.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end),n=d.getHiddenDurationBefore(this.body.hiddenDates,this,i),r=o-n,a=i-n+(this.props.touch.start-(i-n))*e,h=i+r+(this.props.touch.end-(i+r))*e;this.startToFront=0>=1-e,this.endToFront=0>=e-1;var l=d.snapAwayFromHidden(this.body.hiddenDates,a,1-e,!0),u=d.snapAwayFromHidden(this.body.hiddenDates,h,e-1,!0);(l!=a||u!=h)&&(this.props.touch.start=l,this.props.touch.end=u,this.scaleOffset=1-t.scale,a=l,h=u),this.setRange(a,h,!1,!0),this.startToFront=!1,this.endToFront=!0}},o.prototype._pointerToDate=function(t){var e,i=this.options.direction;if(n(i),"horizontal"==i)return this.body.util.toTime(t.x).valueOf();var o=this.body.domProps.center.height;return e=this.conversion(o),t.y/e.scale+e.offset},o.prototype.zoom=function(t,e,i){null==e&&(e=(this.start+this.end)/2);var o=d.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end),n=d.getHiddenDurationBefore(this.body.hiddenDates,this,e),s=o-n,r=e-n+(this.start-(e-n))*t,a=e+s+(this.end-(e+s))*t;this.startToFront=i>0?!1:!0,this.endToFront=-i>0?!1:!0;var h=d.snapAwayFromHidden(this.body.hiddenDates,r,i,!0),l=d.snapAwayFromHidden(this.body.hiddenDates,a,-i,!0);(h!=r||l!=a)&&(r=h,a=l),this.setRange(r,a,!1,!0),this.startToFront=!1,this.endToFront=!0},o.prototype.move=function(t){var e=this.end-this.start,i=this.start+e*t,o=this.end+e*t;this.start=i,this.end=o},o.prototype.moveTo=function(t){var e=(this.start+this.end)/2,i=e-t,o=this.start-i,n=this.end-i;this.setRange(o,n)},t.exports=o},function(t,e,i){i(3);e.onTouch=function(t,e){e.inputHandler=function(t){t.isFirst&&!o&&(e(t),o=!0,setTimeout(function(){o=!1},0))},t.on("hammer.input",e.inputHandler)};var o=!1;e.onRelease=function(t,e){return e.inputHandler=function(t){t.isFinal&&!n&&(e(t),n=!0,setTimeout(function(){n=!1},0))},t.on("hammer.input",e.inputHandler)};var n=!1;e.offTouch=function(t,e){t.off("hammer.input",e.inputHandler)},e.offRelease=e.offTouch},function(t,e,i){var o=i(8);e.convertHiddenOptions=function(t,e){if(t.hiddenDates=[],e&&1==Array.isArray(e)){for(var i=0;i=4*a){var c=0,p=s.clone();switch(i[h].repeat){case"daily":d.day()!=l.day()&&(c=1),d.dayOfYear(n.dayOfYear()),d.year(n.year()),d.subtract(7,"days"),l.dayOfYear(n.dayOfYear()),l.year(n.year()),l.subtract(7-c,"days"),p.add(1,"weeks");break;case"weekly":var f=l.diff(d,"days"),m=d.day();d.date(n.date()),d.month(n.month()),d.year(n.year()),l=d.clone(),d.day(m),l.day(m),l.add(f,"days"),d.subtract(1,"weeks"),l.subtract(1,"weeks"),p.add(1,"weeks");break;case"monthly":d.month()!=l.month()&&(c=1),d.month(n.month()),d.year(n.year()),d.subtract(1,"months"),l.month(n.month()),l.year(n.year()),l.subtract(1,"months"),l.add(c,"months"),p.add(1,"months");break;case"yearly":d.year()!=l.year()&&(c=1),d.year(n.year()),d.subtract(1,"years"),l.year(n.year()),l.subtract(1,"years"),l.add(c,"years"),p.add(1,"years");break;default:return void console.log("Wrong repeat format, allowed are: daily, weekly, monthly, yearly. Given:",i[h].repeat)}for(;p>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 v=e.isHidden(t.range.start,t.hiddenDates),g=e.isHidden(t.range.end,t.hiddenDates),y=t.range.start,b=t.range.end;1==v.hidden&&(y=1==t.range.startToFront?v.startDate-1:v.endDate+1),1==g.hidden&&(b=1==t.range.endToFront?g.startDate-1:g.endDate+1),(1==v.hidden||1==g.hidden)&&t.range._applyRange(y,b)}},e.removeDuplicates=function(t){for(var e=t.hiddenDates,i=[],o=0;o=e[o].start&&e[n].end<=e[o].end?e[n].remove=!0:e[n].start>=e[o].start&&e[n].start<=e[o].end?(e[o].end=e[n].end,e[n].remove=!0):e[n].end>=e[o].start&&e[n].end<=e[o].end&&(e[o].start=e[n].start,e[n].remove=!0));for(var o=0;o=r&&a>n){i=!0;break}}if(1==i&&n=e&&i>r&&(o+=r-s)}return o},e.correctTimeForHidden=function(t,i,n){return n=o(n).toDate().valueOf(),n-=e.getHiddenDurationBefore(t,i,n)},e.getHiddenDurationBefore=function(t,e,i){var n=0;i=o(i).toDate().valueOf();for(var s=0;s=e.start&&a=a&&(n+=a-r)}return n},e.getAccumulatedHiddenDuration=function(t,e,i){for(var o=0,n=0,s=e.start,r=0;r=e.start&&h=i)break;o+=h-a}}return o},e.snapAwayFromHidden=function(t,i,o,n){var s=e.isHidden(i,t);return 1==s.hidden?0>o?1==n?s.startDate-(s.endDate-i)-1:s.startDate-1:1==n?s.endDate+(i-s.startDate)+1:s.endDate+1:i},e.isHidden=function(t,e){for(var i=0;i=o&&n>t)return{hidden:!0,startDate:o,endDate:n}}return{hidden:!1,startDate:o,endDate:n}}},function(t,e,i){function o(){}var n=i(19),s=i(3),r=i(30),a=i(7),h=(i(14),i(16),i(29),i(33),i(41)),d=i(42),l=i(31),u=i(44);n(o.prototype),o.prototype._create=function(t){function e(t){i.isActive()&&i.emit("mousewheel",t)}this.dom={},this.dom.root=document.createElement("div"),this.dom.background=document.createElement("div"),this.dom.backgroundVertical=document.createElement("div"),this.dom.backgroundHorizontal=document.createElement("div"),this.dom.centerContainer=document.createElement("div"),this.dom.leftContainer=document.createElement("div"),this.dom.rightContainer=document.createElement("div"),this.dom.center=document.createElement("div"),this.dom.left=document.createElement("div"),this.dom.right=document.createElement("div"),this.dom.top=document.createElement("div"),this.dom.bottom=document.createElement("div"),this.dom.shadowTop=document.createElement("div"),this.dom.shadowBottom=document.createElement("div"),this.dom.shadowTopLeft=document.createElement("div"),this.dom.shadowBottomLeft=document.createElement("div"),this.dom.shadowTopRight=document.createElement("div"),this.dom.shadowBottomRight=document.createElement("div"),this.dom.root.className="vis-timeline",this.dom.background.className="vis-panel vis-background",this.dom.backgroundVertical.className="vis-panel vis-background vis-vertical",this.dom.backgroundHorizontal.className="vis-panel vis-background vis-horizontal",this.dom.centerContainer.className="vis-panel vis-center",this.dom.leftContainer.className="vis-panel vis-left",this.dom.rightContainer.className="vis-panel vis-right",this.dom.top.className="vis-panel vis-top",this.dom.bottom.className="vis-panel vis-bottom",this.dom.left.className="vis-content",this.dom.center.className="vis-content",this.dom.right.className="vis-content",this.dom.shadowTop.className="vis-shadow vis-top",this.dom.shadowBottom.className="vis-shadow vis-bottom",this.dom.shadowTopLeft.className="vis-shadow vis-top",this.dom.shadowBottomLeft.className="vis-shadow vis-bottom",this.dom.shadowTopRight.className="vis-shadow vis-top",this.dom.shadowBottomRight.className="vis-shadow vis-bottom",this.dom.root.appendChild(this.dom.background),this.dom.root.appendChild(this.dom.backgroundVertical),this.dom.root.appendChild(this.dom.backgroundHorizontal),this.dom.root.appendChild(this.dom.centerContainer),this.dom.root.appendChild(this.dom.leftContainer),this.dom.root.appendChild(this.dom.rightContainer),this.dom.root.appendChild(this.dom.top),this.dom.root.appendChild(this.dom.bottom),this.dom.centerContainer.appendChild(this.dom.center),this.dom.leftContainer.appendChild(this.dom.left),this.dom.rightContainer.appendChild(this.dom.right),this.dom.centerContainer.appendChild(this.dom.shadowTop),this.dom.centerContainer.appendChild(this.dom.shadowBottom),this.dom.leftContainer.appendChild(this.dom.shadowTopLeft),this.dom.leftContainer.appendChild(this.dom.shadowBottomLeft),this.dom.rightContainer.appendChild(this.dom.shadowTopRight),this.dom.rightContainer.appendChild(this.dom.shadowBottomRight),this.on("rangechange",this.redraw.bind(this)),this.on("touch",this._onTouch.bind(this)),this.on("pan",this._onDrag.bind(this));var i=this;this.on("change",function(t){t&&1==t.queue?i._redrawTimer||(i._redrawTimer=setTimeout(function(){i._redrawTimer=null,i._redraw()},0)):i._redraw()}),this.hammer=new s(this.dom.root),this.hammer.get("pinch").set({enable:!0}),this.listeners={};var o=["tap","doubletap","press","pinch","pan","panstart","panmove","panend"];if(o.forEach(function(t){var e=function(e){ -i.isActive()&&i.emit(t,e)};i.hammer.on(t,e),i.listeners[t]=e}),r.onTouch(this.hammer,function(t){i.emit("touch",t)}.bind(this)),r.onRelease(this.hammer,function(t){i.emit("release",t)}.bind(this)),this.dom.root.addEventListener("mousewheel",e),this.dom.root.addEventListener("DOMMouseScroll",e),this.props={root:{},background:{},centerContainer:{},leftContainer:{},rightContainer:{},center:{},left:{},right:{},top:{},bottom:{},border:{},scrollTop:0,scrollTopMin:0},this.customTimes=[],this.touch={},this.redrawCount=0,!t)throw new Error("No container provided");t.appendChild(this.dom.root)},o.prototype.setOptions=function(t){if(t){var e=["width","height","minHeight","maxHeight","autoResize","start","end","clickToUse","dataAttributes","hiddenDates"];if(a.selectiveExtend(e,this.options,t),"orientation"in t&&("string"==typeof t.orientation?this.options.orientation={item:t.orientation,axis:t.orientation}:"object"==typeof t.orientation&&("item"in t.orientation&&(this.options.orientation.item=t.orientation.item),"axis"in t.orientation&&(this.options.orientation.axis=t.orientation.axis))),"both"===this.options.orientation.axis){if(!this.timeAxis2){var i=this.timeAxis2=new h(this.body);i.setOptions=function(t){var e=t?a.extend({},t):{};e.orientation="top",h.prototype.setOptions.call(i,e)},this.components.push(i)}}else if(this.timeAxis2){var o=this.components.indexOf(this.timeAxis2);-1!==o&&this.components.splice(o,1),this.timeAxis2.destroy(),this.timeAxis2=null}if("hiddenDates"in this.options&&l.convertHiddenOptions(this.body,this.options.hiddenDates),"clickToUse"in t&&(t.clickToUse?this.activator||(this.activator=new d(this.dom.root)):this.activator&&(this.activator.destroy(),delete this.activator)),"showCustomTime"in t)throw new Error("Option `showCustomTime` is deprecated. Create a custom time bar via timeline.addCustomTime(time [, id])");this._initAutoResize()}if(this.components.forEach(function(e){return e.setOptions(t)}),this.configurator){this.configurator.setOptions(t.configure);var n=a.deepExtend({},this.options);this.components.forEach(function(t){a.deepExtend(n,t.options)}),this.configurator.setModuleOptions({global:n})}this._redraw()},o.prototype.isActive=function(){return!this.activator||this.activator.active},o.prototype.destroy=function(){this.setItems(null),this.setGroups(null),this.off(),this._stopAutoResize(),this.dom.root.parentNode&&this.dom.root.parentNode.removeChild(this.dom.root),this.dom=null,this.activator&&(this.activator.destroy(),delete this.activator);for(var t in this.listeners)this.listeners.hasOwnProperty(t)&&delete this.listeners[t];this.listeners=null,this.hammer=null,this.components.forEach(function(t){return t.destroy()}),this.body=null},o.prototype.setCustomTime=function(t,e){var i=this.customTimes.filter(function(t){return e===t.options.id});if(0===i.length)throw new Error("No custom time bar found with id "+JSON.stringify(e));i.length>0&&i[0].setCustomTime(t)},o.prototype.getCustomTime=function(t){var e=this.customTimes.filter(function(e){return e.options.id===t});if(0===e.length)throw new Error("No custom time bar found with id "+JSON.stringify(t));return e[0].getCustomTime()},o.prototype.addCustomTime=function(t,e){var i=void 0!==t?a.convert(t,"Date").valueOf():new Date,o=this.customTimes.some(function(t){return t.options.id===e});if(o)throw new Error("A custom time with id "+JSON.stringify(e)+" already exists");var n=new u(this.body,{time:i,id:e});return this.customTimes.push(n),this.components.push(n),this.redraw(),e},o.prototype.removeCustomTime=function(t){var e=this.customTimes.filter(function(e){return e.options.id===t});if(0===e.length)throw new Error("No custom time bar found with id "+JSON.stringify(t));e.forEach(function(t){this.customTimes.splice(this.customTimes.indexOf(t),1),this.components.splice(this.components.indexOf(t),1),t.destroy()}.bind(this))},o.prototype.getVisibleItems=function(){return this.itemSet&&this.itemSet.getVisibleItems()||[]},o.prototype.fit=function(t){var e=this._getDataRange();if(null!==e.start||null!==e.end){var i=t&&void 0!==t.animation?t.animation:!0;this.range.setRange(e.start,e.end,i)}},o.prototype._getDataRange=function(){var t=this.getItemRange(),e=t.min,i=t.max;if(null!=e&&null!=i){var o=i.valueOf()-e.valueOf();0>=o&&(o=864e5),e=new Date(e.valueOf()-.05*o),i=new Date(i.valueOf()+.05*o)}return{start:e,end:i}},o.prototype.setWindow=function(t,e,i){var o;if(1==arguments.length){var n=arguments[0];o=void 0!==n.animation?n.animation:!0,this.range.setRange(n.start,n.end,o)}else o=i&&void 0!==i.animation?i.animation:!0,this.range.setRange(t,e,o)},o.prototype.moveTo=function(t,e){var i=this.range.end-this.range.start,o=a.convert(t,"Date").valueOf(),n=o-i/2,s=o+i/2,r=e&&void 0!==e.animation?e.animation:!0;this.range.setRange(n,s,r)},o.prototype.getWindow=function(){var t=this.range.getRange();return{start:new Date(t.start),end:new Date(t.end)}},o.prototype.redraw=function(){this._redraw()},o.prototype._redraw=function(){var t=!1,e=this.options,i=this.props,o=this.dom;if(o){l.updateHiddenDates(this.body,this.options.hiddenDates),"top"==e.orientation?(a.addClassName(o.root,"vis-top"),a.removeClassName(o.root,"vis-bottom")):(a.removeClassName(o.root,"vis-top"),a.addClassName(o.root,"vis-bottom")),o.root.style.maxHeight=a.option.asSize(e.maxHeight,""),o.root.style.minHeight=a.option.asSize(e.minHeight,""),o.root.style.width=a.option.asSize(e.width,""),i.border.left=(o.centerContainer.offsetWidth-o.centerContainer.clientWidth)/2,i.border.right=i.border.left,i.border.top=(o.centerContainer.offsetHeight-o.centerContainer.clientHeight)/2,i.border.bottom=i.border.top;var n=o.root.offsetHeight-o.root.clientHeight,s=o.root.offsetWidth-o.root.clientWidth;0===o.centerContainer.clientHeight&&(i.border.left=i.border.top,i.border.right=i.border.left),0===o.root.clientHeight&&(s=n),i.center.height=o.center.offsetHeight,i.left.height=o.left.offsetHeight,i.right.height=o.right.offsetHeight,i.top.height=o.top.clientHeight||-i.border.top,i.bottom.height=o.bottom.clientHeight||-i.border.bottom;var r=Math.max(i.left.height,i.center.height,i.right.height),h=i.top.height+r+i.bottom.height+n+i.border.top+i.border.bottom;o.root.style.height=a.option.asSize(e.height,h+"px"),i.root.height=o.root.offsetHeight,i.background.height=i.root.height-n;var d=i.root.height-i.top.height-i.bottom.height-n;i.centerContainer.height=d,i.leftContainer.height=d,i.rightContainer.height=i.leftContainer.height,i.root.width=o.root.offsetWidth,i.background.width=i.root.width-s,i.left.width=o.leftContainer.clientWidth||-i.border.left,i.leftContainer.width=i.left.width,i.right.width=o.rightContainer.clientWidth||-i.border.right,i.rightContainer.width=i.right.width;var u=i.root.width-i.left.width-i.right.width-s;i.center.width=u,i.centerContainer.width=u,i.top.width=u,i.bottom.width=u,o.background.style.height=i.background.height+"px",o.backgroundVertical.style.height=i.background.height+"px",o.backgroundHorizontal.style.height=i.centerContainer.height+"px",o.centerContainer.style.height=i.centerContainer.height+"px",o.leftContainer.style.height=i.leftContainer.height+"px",o.rightContainer.style.height=i.rightContainer.height+"px",o.background.style.width=i.background.width+"px",o.backgroundVertical.style.width=i.centerContainer.width+"px",o.backgroundHorizontal.style.width=i.background.width+"px",o.centerContainer.style.width=i.center.width+"px",o.top.style.width=i.top.width+"px",o.bottom.style.width=i.bottom.width+"px",o.background.style.left="0",o.background.style.top="0",o.backgroundVertical.style.left=i.left.width+i.border.left+"px",o.backgroundVertical.style.top="0",o.backgroundHorizontal.style.left="0",o.backgroundHorizontal.style.top=i.top.height+"px",o.centerContainer.style.left=i.left.width+"px",o.centerContainer.style.top=i.top.height+"px",o.leftContainer.style.left="0",o.leftContainer.style.top=i.top.height+"px",o.rightContainer.style.left=i.left.width+i.center.width+"px",o.rightContainer.style.top=i.top.height+"px",o.top.style.left=i.left.width+"px",o.top.style.top="0",o.bottom.style.left=i.left.width+"px",o.bottom.style.top=i.top.height+i.centerContainer.height+"px",this._updateScrollTop();var c=this.props.scrollTop;"top"!=e.orientation.item&&(c+=Math.max(this.props.centerContainer.height-this.props.center.height-this.props.border.top-this.props.border.bottom,0)),o.center.style.left="0",o.center.style.top=c+"px",o.left.style.left="0",o.left.style.top=c+"px",o.right.style.left="0",o.right.style.top=c+"px";var p=0==this.props.scrollTop?"hidden":"",f=this.props.scrollTop==this.props.scrollTopMin?"hidden":"";if(o.shadowTop.style.visibility=p,o.shadowBottom.style.visibility=f,o.shadowTopLeft.style.visibility=p,o.shadowBottomLeft.style.visibility=f,o.shadowTopRight.style.visibility=p,o.shadowBottomRight.style.visibility=f,this.components.forEach(function(e){t=e.redraw()||t}),t){var m=3;this.redrawCount0&&(this.props.scrollTop=0),this.props.scrollTope;e++)o=this.selection[e],n=this.items[o],n&&n.unselect();for(this.selection=[],e=0,i=t.length;i>e;e++)o=t[e],n=this.items[o],n&&(this.selection.push(o),n.select())},o.prototype.getSelection=function(){return this.selection.concat([])},o.prototype.getVisibleItems=function(){var t=this.body.range.getRange(),e=this.body.util.toScreen(t.start),i=this.body.util.toScreen(t.end),o=[];for(var n in this.groups)if(this.groups.hasOwnProperty(n))for(var s=this.groups[n],r=s.visibleItems,a=0;ae&&o.push(h.id)}return o},o.prototype._deselect=function(t){for(var e=this.selection,i=0,o=e.length;o>i;i++)if(e[i]==t){e.splice(i,1);break}},o.prototype.redraw=function(){var t=this.options.margin,e=this.body.range,i=s.option.asSize,o=this.options,n=o.orientation.item,r=!1,a=this.dom.frame,h=o.editable.updateTime||o.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="vis-itemset"+(h?" vis-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 u=this.stackDirty,c=this._firstGroup(),p={item:t.item,axis:t.axis},f={item:t.item,axis:t.item.vertical/2},m=0,v=t.axis+t.item.vertical;return this.groups[g].redraw(e,f,u),s.forEach(this.groups,function(t){var i=t==c?p:f,o=t.redraw(e,i,u);r=o||r,m+=t.height}),m=Math.max(m,v),this.stackDirty=!1,a.style.height=i(m),this.props.width=a.offsetWidth,this.props.height=m,this.dom.axis.style.top=i("top"==n?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},o.prototype._firstGroup=function(){var t="top"==this.options.orientation.item?0:this.groupIds.length-1,e=this.groupIds[t],i=this.groups[e]||this.groups[v];return i||null},o.prototype._updateUngrouped=function(){var t,e,i=this.groups[v];this.groups[g];if(this.groupsData){if(i){i.hide(),delete this.groups[v];for(e in this.items)if(this.items.hasOwnProperty(e)){t=this.items[e],t.parent&&t.parent.remove(t);var o=this._getGroupId(t.data),n=this.groups[o];n&&n.add(t)||t.hide()}}}else if(!i){var s=null,r=null;i=new l(s,r,this),this.groups[v]=i;for(e in this.items)this.items.hasOwnProperty(e)&&(t=this.items[e],i.add(t));i.show()}},o.prototype.getLabelSet=function(){return this.dom.labelSet},o.prototype.setItems=function(t){var e,i=this,o=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(o&&(s.forEach(this.itemListeners,function(t,e){o.off(e,t)}),e=o.getIds(),this._onRemove(e)),this.itemsData){var n=this.id;s.forEach(this.itemListeners,function(t,e){i.itemsData.on(e,t,n)}),e=this.itemsData.getIds(),this._onAdd(e),this._updateUngrouped()}},o.prototype.getItems=function(){return this.itemsData},o.prototype.setGroups=function(t){var e,i=this;if(this.groupsData&&(s.forEach(this.groupListeners,function(t,e){i.groupsData.off(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 o=this.id;s.forEach(this.groupListeners,function(t,e){i.groupsData.on(e,t,o)}),e=this.groupsData.getIds(),this._onAddGroups(e)}this._updateUngrouped(),this._order(),this.body.emitter.emit("change",{queue:!0})},o.prototype.getGroups=function(){return this.groupsData},o.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)})},o.prototype._getType=function(t){return t.type||this.options.type||(t.end?"range":"box")},o.prototype._getGroupId=function(t){var e=this._getType(t);return"background"==e&&void 0==t.group?g:this.groupsData?t.group:v},o.prototype._onUpdate=function(t){var e=this;t.forEach(function(t){var i,n=e.itemsData.get(t,e.itemOptions),s=e.items[t],r=e._getType(n),a=o.types[r];if(s&&(a&&s instanceof a?e._updateItem(s,n):(i=s.selected,e._removeItem(s),s=null)),!s){if(!a)throw"rangeoverflow"==r?new TypeError('Item type "rangeoverflow" is deprecated. Use css styling instead: .vis-item.vis-range .vis-item-content {overflow: visible;}'):new TypeError('Unknown item type "'+r+'"');s=new a(n,e.conversion,e.options),s.id=t,e._addItem(s),i&&(this.selection.push(t),s.select())}}.bind(this)),this._order(),this.stackDirty=!0,this.body.emitter.emit("change",{queue:!0})},o.prototype._onAdd=o.prototype._onUpdate,o.prototype._onRemove=function(t){var e=0,i=this;t.forEach(function(t){var o=i.items[t];o&&(e++,i._removeItem(o))}),e&&(this._order(),this.stackDirty=!0,this.body.emitter.emit("change",{queue:!0}))},o.prototype._order=function(){s.forEach(this.groups,function(t){t.order()})},o.prototype._onUpdateGroups=function(t){this._onAddGroups(t)},o.prototype._onAddGroups=function(t){var e=this;t.forEach(function(t){var i=e.groupsData.get(t),o=e.groups[t];if(o)o.setData(i);else{if(t==v||t==g)throw new Error("Illegal group id. "+t+" is a reserved id.");var n=Object.create(e.options);s.extend(n,{height:null}),o=new l(t,i,e),e.groups[t]=o;for(var r in e.items)if(e.items.hasOwnProperty(r)){var a=e.items[r];a.data.group==t&&o.add(a)}o.order(),o.show()}}),this.body.emitter.emit("change",{queue:!0})},o.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})},o.prototype._orderGroups=function(){if(this.groupsData){var t=this.groupsData.getIds({order:this.options.groupOrder}),e=!s.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},o.prototype._addItem=function(t){this.items[t.id]=t;var e=this._getGroupId(t.data),i=this.groups[e];i&&i.add(t)},o.prototype._updateItem=function(t,e){var i=t.data.group,o=t.data.subgroup;if(t.setData(e),i!=t.data.group||o!=t.data.subgroup){var n=this.groups[i];n&&n.remove(t);var s=this._getGroupId(t.data),r=this.groups[s];r&&r.add(t)}},o.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)},o.prototype._constructByEndArray=function(t){for(var e=[],i=0;i0||o.length>0)&&this.body.emitter.emit("select",{items:r})}},o.prototype._onAddItem=function(t){if(this.options.selectable&&this.options.editable.add){var e=this,i=this.options.snap||null,o=this.itemFromTarget(t);if(t.stopPropagation(),o){var n=e.itemsData.get(o.id);this.options.onUpdate(n,function(t){t&&e.itemsData.getDataSet().update(t)})}else{var r=s.getAbsoluteLeft(this.dom.frame),a=t.center.x-r,h=this.body.util.toTime(a),d=this.body.util.getScale(),l=this.body.util.getStep(),u={start:i?i(h,d,l):h,content:"new item"};if("range"===this.options.type){var c=this.body.util.toTime(a+this.props.width/5);u.end=i?i(c,d,l):c}u[this.itemsData._fieldId]=s.randomUUID();var p=this.groupFromTarget(t);p&&(u.group=p.groupId),this.options.onAdd(u,function(t){t&&e.itemsData.getDataSet().add(t)})}}},o.prototype._onMultiSelectItem=function(t){if(this.options.selectable){var e=this.itemFromTarget(t);if(e){var i=this.options.multiselect?this.getSelection():[],n=t.srcEvent&&t.srcEvent.shiftKey||!1;if(n&&this.options.multiselect){i.push(e.id);var s=o._getItemRange(this.itemsData.get(i,this.itemOptions));i=[];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>=s.min&&d<=s.max&&!(a instanceof m)&&i.push(a.id)}}else{var l=i.indexOf(e.id);-1==l?i.push(e.id):i.splice(l,1)}this.setSelection(i),this.body.emitter.emit("select",{items:this.getSelection()})}}},o._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}},o.prototype.itemFromTarget=function(t){for(var e=t.target;e;){if(e.hasOwnProperty("timeline-item"))return e["timeline-item"];e=e.parentNode}return null},o.prototype.groupFromTarget=function(t){for(var e=t.center?t.center.y:t.clientY,i=0;ia&&ea)return n}else if(0===i&&ec;c++){var f=this.visibleItems[c];f.repositionY(e)}return o},o.prototype._calculateHeight=function(t){var e,i=this.visibleItems;this.resetSubgroups();var o=this;if(i.length>0){var s=i[0].top,r=i[0].top+i[0].height;if(n.forEach(i,function(t){s=Math.min(s,t.top),r=Math.max(r,t.top+t.height),void 0!==t.data.subgroup&&(o.subgroups[t.data.subgroup].height=Math.max(o.subgroups[t.data.subgroup].height,t.height),o.subgroups[t.data.subgroup].visible=!0)}),s>t.axis){var a=s-t.axis;r-=a,n.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)},o.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)},o.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 o=this.dom.axis;o.parentNode&&o.parentNode.removeChild(o)},o.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)}},o.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(s=0;sl}),1==this.checkRangedItems)for(this.checkRangedItems=!1,s=0;sl})}for(s=0;s=0&&(s=e[r],!n(s));r--)void 0===o[s.id]&&(o[s.id]=!0,i.push(s));for(r=t+1;rn;n++)t[n].top=null;for(n=0,s=t.length;s>n;n++){var r=t[n];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 o,n,s;for(o=0,n=t.length;n>o;o++)if(void 0!==t[o].data.subgroup){s=e.axis;for(var r in i)i.hasOwnProperty(r)&&1==i[r].visible&&i[r].indexe.left&&t.top-i.vertical+oe.top}},function(t,e,i){function o(t,e,i){if(this.props={content:{width:0}},this.overflow=!1,t){if(void 0==t.start)throw new Error('Property "start" missing in item '+t.id);if(void 0==t.end)throw new Error('Property "end" missing in item '+t.id)}n.call(this,t,e,i)}var n=(i(3),i(2));o.prototype=new n(null,null,null),o.prototype.baseClassName="vis-item vis-range",o.prototype.isVisible=function(t){return this.data.startt.start},o.prototype.redraw=function(){var t=this.dom;if(t||(this.dom={},t=this.dom,t.box=document.createElement("div"),t.frame=document.createElement("div"),t.frame.className="vis-item-overflow",t.box.appendChild(t.frame),t.content=document.createElement("div"),t.content.className="vis-item-content",t.frame.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?" vis-selected":"");t.box.className=this.baseClassName+i,this.overflow="hidden"!==window.getComputedStyle(t.frame).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()},o.prototype.show=function(){this.displayed||this.redraw()},o.prototype.hide=function(){if(this.displayed){var t=this.dom.box;t.parentNode&&t.parentNode.removeChild(t),this.displayed=!1}},o.prototype.repositionX=function(t){var e,i,o=this.parent.width,n=this.conversion.toScreen(this.data.start),s=this.conversion.toScreen(this.data.end);(void 0===t||t===!0)&&(-o>n&&(n=-o),s>2*o&&(s=2*o));var r=Math.max(s-n,1);switch(this.overflow?(this.left=n,this.width=r+this.props.content.width,i=this.props.content.width):(this.left=n,this.width=r,i=Math.min(s-n,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,0)+"px";break;case"center":this.dom.content.style.left=Math.max((r-i)/2,0)+"px";break;default:e=this.overflow?s>0?Math.max(-n,0):-i:0>n?-n:0,this.dom.content.style.left=e+"px"}},o.prototype.repositionY=function(){var t=this.options.orientation.item,e=this.dom.box;"top"==t?e.style.top=this.top+"px":e.style.top=this.parent.height-this.top-this.height+"px"},o.prototype._repaintDragLeft=function(){if(this.selected&&this.options.editable.updateTime&&!this.dom.dragLeft){var t=document.createElement("div");t.className="vis-drag-left",t.dragLeftItem=this,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)},o.prototype._repaintDragRight=function(){if(this.selected&&this.options.editable.updateTime&&!this.dom.dragRight){var t=document.createElement("div");t.className="vis-drag-right",t.dragRightItem=this,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=o},function(t,e,i){function o(t,e,i,n){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=n,void 0===n&&(this.hiddenDates=[]),this.format=o.FORMAT}var n=i(8),s=i(31),r=i(7);o.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:""}},o.prototype.setFormat=function(t){var e=r.deepExtend({},o.FORMAT);this.format=r.deepExtend(e,t)},o.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)},o.prototype.first=function(){this.current=new Date(this._start.valueOf()),this.roundToMinor()},o.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)}},o.prototype.hasNext=function(){return this.current.valueOf()<=this._end.valueOf()},o.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)},o.prototype.setAutoScale=function(t){this.autoScale=t},o.prototype.setMinimumStep=function(t){if(void 0!=t){var e=31104e6,i=2592e6,o=864e5,n=36e5,s=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*o>t&&(this.scale="day",this.step=5),2*o>t&&(this.scale="day",this.step=2),o>t&&(this.scale="day",this.step=1),o/2>t&&(this.scale="weekday",this.step=1),4*n>t&&(this.scale="hour",this.step=4),n>t&&(this.scale="hour",this.step=1),15*s>t&&(this.scale="minute",this.step=15),10*s>t&&(this.scale="minute",this.step=10),5*s>t&&(this.scale="minute",this.step=5),s>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)}},o.snap=function(t,e,i){var o=new Date(t.valueOf());if("year"==e){var n=o.getFullYear()+Math.round(o.getMonth()/12);o.setFullYear(Math.round(n/i)*i),o.setMonth(0),o.setDate(0),o.setHours(0),o.setMinutes(0),o.setSeconds(0),o.setMilliseconds(0)}else if("month"==e)o.getDate()>15?(o.setDate(1),o.setMonth(o.getMonth()+1)):o.setDate(1),o.setHours(0),o.setMinutes(0),o.setSeconds(0),o.setMilliseconds(0);else if("day"==e){switch(i){case 5:case 2:o.setHours(24*Math.round(o.getHours()/24));break;default:o.setHours(12*Math.round(o.getHours()/12))}o.setMinutes(0),o.setSeconds(0),o.setMilliseconds(0)}else if("weekday"==e){switch(i){case 5:case 2:o.setHours(12*Math.round(o.getHours()/12));break;default:o.setHours(6*Math.round(o.getHours()/6))}o.setMinutes(0),o.setSeconds(0),o.setMilliseconds(0)}else if("hour"==e){switch(i){case 4:o.setMinutes(60*Math.round(o.getMinutes()/60));break;default:o.setMinutes(30*Math.round(o.getMinutes()/30))}o.setSeconds(0),o.setMilliseconds(0)}else if("minute"==e){switch(i){case 15:case 10:o.setMinutes(5*Math.round(o.getMinutes()/5)),o.setSeconds(0);break;case 5:o.setSeconds(60*Math.round(o.getSeconds()/60));break;default:o.setSeconds(30*Math.round(o.getSeconds()/30))}o.setMilliseconds(0)}else if("second"==e)switch(i){case 15:case 10:o.setSeconds(5*Math.round(o.getSeconds()/5)),o.setMilliseconds(0);break;case 5:o.setMilliseconds(1e3*Math.round(o.getMilliseconds()/1e3));break;default:o.setMilliseconds(500*Math.round(o.getMilliseconds()/500))}else if("millisecond"==e){var s=i>5?i/2:1;o.setMilliseconds(Math.round(o.getMilliseconds()/s)*s)}return o},o.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}},o.prototype.getLabelMinor=function(t){void 0==t&&(t=this.current);var e=this.format.minorLabels[this.scale];return e&&e.length>0?n(t).format(e):""},o.prototype.getLabelMajor=function(t){void 0==t&&(t=this.current);var e=this.format.majorLabels[this.scale];return e&&e.length>0?n(t).format(e):""},o.prototype.getClassName=function(){function t(t){return t/h%2==0?" vis-even":" vis-odd"}function e(t){return t.isSame(new Date,"day")?" vis-today":t.isSame(n().add(1,"day"),"day")?" vis-tomorrow":t.isSame(n().add(-1,"day"),"day")?" vis-yesterday":""}function i(t){return t.isSame(new Date,"week")?" vis-current-week":""}function o(t){return t.isSame(new Date,"month")?" vis-current-month":""}function s(t){return t.isSame(new Date,"year")?" vis-current-year":""}var r=n(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+"-h"+(d+4)),"vis-h"+d+e(a)+t(a.hours());case"weekday":return"vis-"+a.format("dddd").toLowerCase()+e(a)+i(a)+t(a.date());case"day":var l=a.date(),u=a.format("MMMM").toLowerCase();return"vis-day"+l+" vis-"+u+o(a)+t(l-1);case"month":return"vis-"+a.format("MMMM").toLowerCase()+o(a)+t(a.month());case"year":var c=a.year();return"vis-year"+c+s(a)+t(c);default:return""}},t.exports=o},function(t,e,i){function o(t,e,i){n.call(this,t,e,i),this.width=0,this.height=0,this.top=0,this.left=0}var n=(i(7),i(34));o.prototype=Object.create(n.prototype),o.prototype.redraw=function(t,e,i){var o=!1;this.visibleItems=this._updateVisibleItems(this.orderedItems,this.visibleItems,t),this.width=this.dom.background.offsetWidth,this.dom.background.style.height="0";for(var n=0,s=this.visibleItems.length;s>n;n++){var r=this.visibleItems[n];r.repositionY(e)}return o},o.prototype.show=function(){this.dom.background.parentNode||this.itemSet.dom.background.appendChild(this.dom.background)},t.exports=o},function(t,e,i){function o(t,e,i){if(this.props={dot:{top:0,width:0,height:0},content:{height:0,marginLeft:0}},t&&void 0==t.start)throw new Error('Property "start" missing in item '+t);n.call(this,t,e,i)}var n=i(2);o.prototype=new n(null,null,null),o.prototype.isVisible=function(t){var e=(t.end-t.start)/4;return this.data.start>t.start-e&&this.data.startt.start},o.prototype.redraw=function(){var t=this.dom;if(t||(this.dom={},t=this.dom,t.box=document.createElement("div"),t.frame=document.createElement("div"),t.frame.className="vis-item-overflow",t.box.appendChild(t.frame),t.content=document.createElement("div"),t.content.className="vis-item-content",t.frame.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?" vis-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}},o.prototype.show=r.prototype.show,o.prototype.hide=r.prototype.hide,o.prototype.repositionX=r.prototype.repositionX,o.prototype.repositionY=function(t){var e="top"===this.options.orientation.item;this.dom.content.style.top=e?"":"0",this.dom.content.style.bottom=e?"0":"";var i;if(void 0!==this.data.subgroup){var o=this.data.subgroup,n=this.parent.subgroups,r=n[o].index;if(1==e){i=this.parent.subgroups[o].height+t.item.vertical,i+=0==r?t.axis-.5*t.item.vertical:0;var a=this.parent.top;for(var h in n)n.hasOwnProperty(h)&&1==n[h].visible&&n[h].indexr&&(a+=l)}i=this.parent.subgroups[o].height+t.item.vertical,this.dom.box.style.top=this.parent.height-d+a+"px",this.dom.box.style.bottom=""}}else this.parent instanceof s?(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=o},function(t,e,i){function o(t,e){this.dom={foreground:null,lines:[],majorTexts:[],minorTexts:[],redundant:{lines:[],majorTexts:[],minorTexts:[]}},this.props={range:{start:0,end:0,minimumStep:0},lineTop:0},this.defaultOptions={orientation:{axis:"bottom"},showMinorLabels:!0,showMajorLabels:!0,format:r.FORMAT,timeAxis:null},this.options=n.extend({},this.defaultOptions),this.body=t,this._create(),this.setOptions(e)}var n=i(7),s=i(27),r=i(37),a=i(31),h=i(8);o.prototype=new s,o.prototype.setOptions=function(t){t&&(n.selectiveExtend(["showMinorLabels","showMajorLabels","hiddenDates","timeAxis"],this.options,t),n.selectiveDeepExtend(["format"],this.options,t),"orientation"in t&&("string"==typeof t.orientation?this.options.orientation.axis=t.orientation:"object"==typeof t.orientation&&"axis"in t.orientation&&(this.options.orientation.axis=t.orientation.axis)),"locale"in t&&("function"==typeof h.locale?h.locale(t.locale):h.lang(t.locale)))},o.prototype._create=function(){this.dom.foreground=document.createElement("div"),this.dom.background=document.createElement("div"),this.dom.foreground.className="vis-time-axis vis-foreground",this.dom.background.className="vis-time-axis vis-background"},o.prototype.destroy=function(){this.dom.foreground.parentNode&&this.dom.foreground.parentNode.removeChild(this.dom.foreground),this.dom.background.parentNode&&this.dom.background.parentNode.removeChild(this.dom.background),this.body=null},o.prototype.redraw=function(){var t=this.options,e=this.props,i=this.dom.foreground,o=this.dom.background,n="top"==t.orientation.axis?this.body.dom.top:this.body.dom.bottom,s=i.parentNode!==n;this._calculateCharSize();var r=this.options.showMinorLabels,a=this.options.showMajorLabels;e.minorLabelHeight=r?e.minorCharHeight:0,e.majorLabelHeight=a?e.majorCharHeight:0,e.height=e.minorLabelHeight+e.majorLabelHeight,e.width=i.offsetWidth,e.minorLineHeight=this.body.domProps.root.height-e.majorLabelHeight-("top"==t.orientation.axis?this.body.domProps.bottom.height:this.body.domProps.top.height),e.minorLineWidth=1,e.majorLineHeight=e.minorLineHeight+e.majorLabelHeight,e.majorLineWidth=1;var h=i.nextSibling,d=o.nextSibling;return i.parentNode&&i.parentNode.removeChild(i),o.parentNode&&o.parentNode.removeChild(o),i.style.height=this.props.height+"px",this._repaintLabels(),h?n.insertBefore(i,h):n.appendChild(i),d?this.body.dom.backgroundVertical.insertBefore(o,d):this.body.dom.backgroundVertical.appendChild(o),this._isResized()||s},o.prototype._repaintLabels=function(){var t=this.options.orientation.axis,e=n.convert(this.body.range.start,"Number"),i=n.convert(this.body.range.end,"Number"),o=this.body.util.toTime(7*(this.props.minorCharWidth||10)).valueOf(),s=o-a.getHiddenDurationBefore(this.body.hiddenDates,this.body.range,o);s-=this.body.util.toTime(0).valueOf();var h=new r(new Date(e),new Date(i),s,this.body.hiddenDates);this.options.format&&h.setFormat(this.options.format),this.options.timeAxis&&h.setScale(this.options.timeAxis),this.step=h;var d=this.dom;d.redundant.lines=d.lines,d.redundant.majorTexts=d.majorTexts,d.redundant.minorTexts=d.minorTexts,d.lines=[],d.majorTexts=[],d.minorTexts=[];var l,u,c,p,f=0,m=0,v=0,g=void 0,y=0;for(h.first();h.hasNext()&&1e3>y;)y++,l=h.getCurrent(),u=h.isMajor(),p=h.getClassName(),m=f,f=this.body.util.toScreen(l),v=f-m,c&&(c.style.width=v+"px"),this.options.showMinorLabels&&this._repaintMinorText(f,h.getLabelMinor(),t,p),u&&this.options.showMajorLabels?(f>0&&(void 0==g&&(g=f),this._repaintMajorText(f,h.getLabelMajor(),t,p)),c=this._repaintMajorLine(f,t,p)):c=this._repaintMinorLine(f,t,p),h.next();if(this.options.showMajorLabels){var b=this.body.util.toTime(0),w=h.getLabelMajor(b),_=w.length*(this.props.majorCharWidth||10)+10;(void 0==g||g>_)&&this._repaintMajorText(0,w,t,p)}n.forEach(this.dom.redundant,function(t){for(;t.length;){var e=t.pop();e&&e.parentNode&&e.parentNode.removeChild(e)}})},o.prototype._repaintMinorText=function(t,e,i,o){var n=this.dom.redundant.minorTexts.shift();if(!n){var s=document.createTextNode("");n=document.createElement("div"),n.appendChild(s),this.dom.foreground.appendChild(n)}this.dom.minorTexts.push(n),n.childNodes[0].nodeValue=e,n.style.top="top"==i?this.props.majorLabelHeight+"px":"0",n.style.left=t+"px",n.className="vis-text vis-minor "+o},o.prototype._repaintMajorText=function(t,e,i,o){var n=this.dom.redundant.majorTexts.shift();if(!n){var s=document.createTextNode(e);n=document.createElement("div"),n.appendChild(s),this.dom.foreground.appendChild(n)}this.dom.majorTexts.push(n),n.childNodes[0].nodeValue=e,n.className="vis-text vis-major "+o,n.style.top="top"==i?"0":this.props.minorLabelHeight+"px",n.style.left=t+"px"},o.prototype._repaintMinorLine=function(t,e,i){var o=this.dom.redundant.lines.shift();o||(o=document.createElement("div"),this.dom.background.appendChild(o)),this.dom.lines.push(o);var n=this.props;return"top"==e?o.style.top=n.majorLabelHeight+"px":o.style.top=this.body.domProps.top.height+"px",o.style.height=n.minorLineHeight+"px",o.style.left=t-n.minorLineWidth/2+"px",o.className="vis-grid vis-vertical vis-minor "+i,o},o.prototype._repaintMajorLine=function(t,e,i){var o=this.dom.redundant.lines.shift();o||(o=document.createElement("div"),this.dom.background.appendChild(o)),this.dom.lines.push(o);var n=this.props;return"top"==e?o.style.top="0":o.style.top=this.body.domProps.top.height+"px",o.style.left=t-n.majorLineWidth/2+"px",o.style.height=n.majorLineHeight+"px",o.className="vis-grid vis-vertical vis-major "+i,o},o.prototype._calculateCharSize=function(){this.dom.measureCharMinor||(this.dom.measureCharMinor=document.createElement("DIV"),this.dom.measureCharMinor.className="vis-text vis-minor vis-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="vis-text vis-major vis-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=o},function(t,e,i){function o(t){this.active=!1,this.dom={container:t},this.dom.overlay=document.createElement("div"),this.dom.overlay.className="vis-overlay",this.dom.container.appendChild(this.dom.overlay),this.hammer=a(this.dom.overlay),this.hammer.on("tap",this._onTapOverlay.bind(this));var e=this,i=["tap","doubletap","press","pinch","pan","panstart","panmove","panend"];i.forEach(function(t){e.hammer.on(t,function(t){t.stopPropagation()})}),this.bodyHammer=a(document&&document.body,{prevent_default:!1}),this.bodyHammer.on("tap",function(i){n(i.target,t)||e.deactivate()}),void 0!==this.keycharm&&this.keycharm.destroy(),this.keycharm=s(),this.escListener=this.deactivate.bind(this)}function n(t,e){for(;t;){if(t===e)return!0;t=t.parentNode}return!1}var s=i(43),r=i(19),a=i(3),h=i(7);r(o.prototype),o.current=null,o.prototype.destroy=function(){ -this.deactivate(),this.dom.overlay.parentNode.removeChild(this.dom.overlay),this.hammer=null,this.bodyHammer=null},o.prototype.activate=function(){o.current&&o.current.deactivate(),o.current=this,this.active=!0,this.dom.overlay.style.display="none",h.addClassName(this.dom.container,"vis-active"),this.emit("change"),this.emit("activate"),this.keycharm.bind("esc",this.escListener)},o.prototype.deactivate=function(){this.active=!1,this.dom.overlay.style.display="",h.removeClassName(this.dom.container,"vis-active"),this.keycharm.unbind("esc",this.escListener),this.emit("change"),this.emit("deactivate")},o.prototype._onTapOverlay=function(t){this.activate(),t.stopPropagation()},t.exports=o},function(t,e,i){var o,n,s;!function(i,r){n=[],o=r,s="function"==typeof o?o.apply(e,n):o,!(void 0!==s&&(t.exports=s))}(this,function(){function t(t){var e,i=t&&t.preventDefault||!1,o=t&&t.container||window,n={},s={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!==s[e][t.keyCode]){for(var o=s[e][t.keyCode],n=0;n0&&this._makeItem([]),this._makeHeader(n),this._handleObject(this.configureOptions[n],[n])),i++);this.options.showButton===!0&&!function(){var e=document.createElement("div");e.className="vis-network-configuration button",e.innerHTML="generate options",e.onclick=function(){t._printOptions()},e.onmouseover=function(){e.className="vis-network-configuration button hover"},e.onmouseout=function(){e.className="vis-network-configuration button"},t.optionsContainer=document.createElement("div"),t.optionsContainer.className="vis-network-configuration vis-option-container",t.domElements.push(t.optionsContainer),t.domElements.push(e)}(),this._push(),this.colorPicker.insertTo(this.container)}},{key:"_push",value:function(){this.wrapper=document.createElement("div"),this.wrapper.className="vis-network-configuration-wrapper",this.container.appendChild(this.wrapper);for(var t=0;t1?i-1:0),n=1;i>n;n++)o[n-1]=arguments[n];this.allowCreation===!0&&!function(){var i=document.createElement("div");i.className="vis-network-configuration item s"+t.length,o.forEach(function(t){i.appendChild(t)}),e.domElements.push(i)}()}},{key:"_makeHeader",value:function(t){var e=document.createElement("div");e.className="vis-network-configuration header",e.innerHTML=t,this._makeItem([],e)}},{key:"_makeLabel",value:function(t,e){var i=void 0===arguments[2]?!1:arguments[2],o=document.createElement("div");return o.className="vis-network-configuration label s"+e.length,i===!0?o.innerHTML=""+t+":":o.innerHTML=t+":",o}},{key:"_makeDropdown",value:function(t,e,i){var o=document.createElement("select");o.className="vis-network-configuration select";var n=0;void 0!==e&&-1!==t.indexOf(e)&&(n=t.indexOf(e));for(var s=0;se&&n>2*e?a.min=2*e:n>.1*e&&(a.min=e/10),2*e>s&&1!==s&&(a.max=2*e),a.value=e):a.value=o;var h=document.createElement("input");h.className="vis-network-configuration rangeinput",h.value=a.value;var d=this;a.onchange=function(){h.value=this.value,d._update(Number(this.value),i)},a.oninput=function(){h.value=this.value};var l=this._makeLabel(i[i.length-1],i);this._makeItem(i,l,a,h)}},{key:"_makeCheckbox",value:function(t,e,i){var o=document.createElement("input");o.type="checkbox",o.className="vis-network-configuration checkbox",o.checked=t,void 0!==e&&(o.checked=e,e!==t&&("object"==typeof t?e!==t.enabled&&this.changedOptions.push({path:i,value:e}):this.changedOptions.push({path:i,value:e})));var n=this;o.onchange=function(){n._update(this.checked,i)};var s=this._makeLabel(i[i.length-1],i);this._makeItem(i,s,o)}},{key:"_makeTextInput",value:function(t,e,i){var o=document.createElement("input");o.type="text",o.className="vis-network-configuration text",o.value=e,e!==t&&this.changedOptions.push({path:i,value:e});var n=this;o.onchange=function(){n._update(this.value,i)};var s=this._makeLabel(i[i.length-1],i);this._makeItem(i,s,o)}},{key:"_makeColorField",value:function(t,e,i){var o=this,n=t[1],s=document.createElement("div");e=void 0===e?n:e,"none"!==e?(s.className="vis-network-configuration colorBlock",s.style.backgroundColor=e):s.className="vis-network-configuration colorBlock none",e=void 0===e?n:e,s.onclick=function(){o._showColorPicker(e,s,i)};var r=this._makeLabel(i[i.length-1],i);this._makeItem(i,r,s)}},{key:"_showColorPicker",value:function(t,e,i){var o=this,n=e.getBoundingClientRect(),s=document.body.getBoundingClientRect(),r=n.left+n.width+5,a=n.top-s.top+.5*n.height;this.colorPicker.show(r,a),this.colorPicker.setColor(t),this.colorPicker.setCallback(function(t){var n="rgba("+t.r+","+t.g+","+t.b+","+t.a+")";e.style.backgroundColor=n,o._update(n,i)})}},{key:"_handleObject",value:function(t){var e=void 0===arguments[1]?[]:arguments[1],i=void 0===arguments[2]?!1:arguments[2],o=!1,n=this.options.filter,s=!1;for(var r in t)if(t.hasOwnProperty(r)){o=!0;var a=t[r],d=h.copyAndExtendArray(e,r);if("function"==typeof n&&(o=n(r,e),o===!1&&!(a instanceof Array)&&"string"!=typeof a&&"boolean"!=typeof a&&a instanceof Object&&(this.allowCreation=!1,o=this._handleObject(a,d,!0),this.allowCreation=i===!1)),o!==!1){s=!0;var l=this._getValue(d);if(a instanceof Array)this._handleArray(a,l,d);else if("string"==typeof a)this._makeTextInput(a,l,d);else if("boolean"==typeof a)this._makeCheckbox(a,l,d);else if(a instanceof Object){var u=!0;if(-1!==e.indexOf("physics")&&this.moduleOptions.physics.solver!==r&&(u=!1),u===!0)if(void 0!==a.enabled){var c=h.copyAndExtendArray(d,"enabled"),p=this._getValue(c);if(p===!0){var f=this._makeLabel(r,d,!0);this._makeItem(d,f),s=this._handleObject(a,d)||s}else this._makeCheckbox(a,p,d)}else{var f=this._makeLabel(r,d,!0);this._makeItem(d,f),s=this._handleObject(a,d)||s}}else console.error("dont know how to handle",a,r,d)}}return s}},{key:"_handleArray",value:function(t,e,i){"string"==typeof t[0]&&"color"===t[0]?(this._makeColorField(t,e,i),t[1]!==e&&this.changedOptions.push({path:i,value:e})):"string"==typeof t[0]?(this._makeDropdown(t,e,i),t[0]!==e&&this.changedOptions.push({path:i,value:e})):"number"==typeof t[0]&&(this._makeRange(t,e,i),t[0]!==e&&this.changedOptions.push({path:i,value:Number(e)}))}},{key:"_update",value:function(t,e){var i=this._constructOptions(t,e);this.parent.setOptions(i)}},{key:"_constructOptions",value:function(t,e){var i=void 0===arguments[2]?{}:arguments[2],o=i;t="true"===t?!0:t,t="false"===t?!1:t;for(var n=0;nvar options = "+JSON.stringify(t,null,2)+""}}]),t}();e["default"]=d,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;is;s++)for(r=0;rp?p+1:p;var f=l/this.r,m=a.RGBToHSV(this.color.r,this.color.g,this.color.b);m.h=p,m.s=f;var v=a.HSVToRGB(m.h,m.s,m.v);v.a=this.color.a,this.color=v,this.initialColorDiv.style.backgroundColor="rgba("+this.initialColor.r+","+this.initialColor.g+","+this.initialColor.b+","+this.initialColor.a+")",this.newColorDiv.style.backgroundColor="rgba("+this.color.r+","+this.color.g+","+this.color.b+","+this.color.a+")"}}]),t}();e["default"]=h,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;is.distance?console.log('%cUnknown option detected: "'+e+'" in '+t.printLocation(n.path,e,"")+"Perhaps it was misplaced? Matching option found at: "+t.printLocation(s.path,s.closestMatch,""),h):n.distance<=d?console.log('%cUnknown option detected: "'+e+'". Did you mean "'+n.closestMatch+'"?'+t.printLocation(n.path,e),h):console.log('%cUnknown option detected: "'+e+'". Did you mean one of these: '+t.print(Object.keys(i))+t.printLocation(o,e),h),r=!0}},{key:"findInOptions",value:function(e,i,o){var n=void 0===arguments[3]?!1:arguments[3],r=1e9,a="",h=[],d=e.toLowerCase(),l=void 0;for(var u in i){var c=void 0;if(void 0!==i[u].__type__&&n===!0){var p=t.findInOptions(e,i[u],s.copyAndExtendArray(o,u));r>p.distance&&(a=p.closestMatch,h=p.path,r=p.distance,l=p.indexMatch)}else-1!==u.toLowerCase().indexOf(d)&&(l=u),c=t.levenshteinDistance(e,u),r>c&&(a=u,h=s.copyArray(o),r=c)}return{closestMatch:a,path:h,distance:r,indexMatch:l}}},{key:"printLocation",value:function(t,e){for(var i=void 0===arguments[2]?"Problem value found at: \n":arguments[2],o="\n\n"+i+"options = {\n",n=0;ns;s++)o+=" ";o+=t[n]+": {\n"}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}},o.prototype.getEventProperties=function(t){var e=t.center?t.center.x:t.clientX,i=t.center?t.center.y:t.clientY,o=e-n.getAbsoluteLeft(this.dom.centerContainer),s=i-n.getAbsoluteTop(this.dom.centerContainer),r=this._toTime(o),a=u.customTimeFromTarget(t),h=n.getTarget(t),d=null;n.hasParent(h,this.timeAxis.dom.foreground)?d="axis":this.timeAxis2&&n.hasParent(h,this.timeAxis2.dom.foreground)?d="axis":n.hasParent(h,this.linegraph.yAxisLeft.dom.frame)?d="data-axis":n.hasParent(h,this.linegraph.yAxisRight.dom.frame)?d="data-axis":n.hasParent(h,this.linegraph.legendLeft.dom.frame)?d="legend":n.hasParent(h,this.linegraph.legendRight.dom.frame)?d="legend":null!=a?d="custom-time":n.hasParent(h,this.currentTime.bar)?d="current-time":n.hasParent(h,this.dom.center)&&(d="background");var l=[],c=this.linegraph.yAxisLeft,p=this.linegraph.yAxisRight;return c.hidden||l.push(c.screenToValue(s)),p.hidden||l.push(p.screenToValue(s)),{event:t,what:d,pageX:t.srcEvent?t.srcEvent.pageX:t.pageX,pageY:t.srcEvent?t.srcEvent.pageY:t.pageY,x:o,y:s,time:r,value:l}},t.exports=o},function(t,e,i){function o(t,e){this.id=n.randomUUID(),this.body=t,this.defaultOptions={yAxisOrientation:"left",defaultGroup:"default",sort:!0,sampling:!0,stack:!1,graphHeight:"400px",shaded:{enabled:!1,orientation:"bottom"},style:"line",barChart:{width:50,sideBySide:!1,align:"center"},interpolation:{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,left:{range:{min:void 0,max:void 0},format:function(t){return t},title:{text:void 0,style:void 0}},right:{range:{min:void 0,max:void 0},format:function(t){return t},title:{text:void 0,style:void 0}}},legend:{enabled:!1,icons:!0,left:{visible:!0,position:"top-left"},right:{visible:!0,position:"top-right"}},groups:{visibility:{}}},this.options=n.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,o){i._onAdd(e.items)},update:function(t,e,o){i._onUpdate(e.items)},remove:function(t,e,o){i._onRemove(e.items)}},this.groupListeners={add:function(t,e,o){i._onAddGroups(e.items)},update:function(t,e,o){i._onUpdateGroups(e.items)},remove:function(t,e,o){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=n.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 n=i(7),s=i(13),r=i(14),a=i(16),h=i(27),d=i(51),l=i(53),u=i(57),c=i(56),p=i(54),f="__ungrouped__";o.prototype=new h,o.prototype._create=function(){var t=document.createElement("div");t.className="vis-line-graph",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 u(this.body,this.options.legend,"left",this.options.groups),this.legendRight=new u(this.body,this.options.legend,"right",this.options.groups),this.show()},o.prototype.setOptions=function(t){if(t){var e=["sampling","defaultGroup","stack","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),u={};for(this._getRelevantData(a,u,d,l),this._applySampling(a,u),e=0;ep&&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;ro){d.push(h);break}d.push(h)}}else for(a=0;ai&&h.x0)for(var o=0;o0){var s=1,r=n.length,a=this.body.util.toGlobalScreen(n[n.length-1].x)-this.body.util.toGlobalScreen(n[0].x),h=r/a;s=Math.min(Math.ceil(.2*r),Math.max(1,Math.round(h)));for(var d=[],l=0;r>l;l+=s)d.push(n[l]);e[t[o]]=d}}},o.prototype._getYRanges=function(t,e,i){var o,n,s,r,a=[],h=[];if(t.length>0){for(s=0;s0&&(n=this.groups[t[s]],r.stack===!0?"left"==r.yAxisOrientation?a=a.concat(n.getData(o)):h=h.concat(n.getData(o)):i[t[s]]=n.getYRange(o,t[s]));c.getStackedYRange(a,i,t,"__barStackLeft","left"),c.getStackedYRange(h,i,t,"__barStackRight","right"),p.getStackedYRange(a,i,t,"__lineStackLeft","left"),p.getStackedYRange(h,i,t,"__lineStackRight","right")}},o.prototype._updateYAxis=function(t,e){var i,o,n=!1,s=!1,r=!1,a=1e9,h=1e9,d=-1e9,l=-1e9;if(t.length>0){for(var u=0;ui?i:a,d=o>d?o:d):(r=!0,h=h>i?i:h,l=o>l?o:l));1==s&&this.yAxisLeft.setRange(a,d),1==r&&this.yAxisRight.setRange(h,l)}n=this._toggleAxisVisiblity(s,this.yAxisLeft)||n,n=this._toggleAxisVisiblity(r,this.yAxisRight)||n,1==r&&1==s?(this.yAxisLeft.drawIcons=!0,this.yAxisRight.drawIcons=!0):(this.yAxisLeft.drawIcons=!1,this.yAxisRight.drawIcons=!1),this.yAxisRight.master=!s,0==this.yAxisRight.master?(1==r?this.yAxisLeft.lineOffset=this.yAxisRight.width:this.yAxisLeft.lineOffset=0,n=this.yAxisLeft.redraw()||n,this.yAxisRight.stepPixels=this.yAxisLeft.stepPixels,this.yAxisRight.zeroCrossing=this.yAxisLeft.zeroCrossing,this.yAxisRight.amountOfSteps=this.yAxisLeft.amountOfSteps,n=this.yAxisRight.redraw()||n):n=this.yAxisRight.redraw()||n;for(var p=["__barStackLeft","__barStackRight","__lineStackLeft","__lineStackRight"],u=0;ut?-1:1});for(var a=0;a0&&(t=0),this.range.start=t,this.range.end=e},o.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)&&(this.groups[i].visible!==!0||void 0!==this.linegraphOptions.visibility[i]&&this.linegraphOptions.visibility[i]!==!0||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=this.options.visible===!0?Number((""+this.options.width).replace("px","")):0;var o=this.props,n=this.dom.frame;n.className="vis-data-axis",this._calculateCharSize();var s=this.options.orientation,r=this.options.showMinorLabels,a=this.options.showMajorLabels;o.minorLabelHeight=r?o.minorCharHeight:0,o.majorLabelHeight=a?o.majorCharHeight:0,o.minorLineWidth=this.body.dom.backgroundHorizontal.offsetWidth-this.lineOffset-this.width+2*this.options.minorLinesOffset,o.minorLineHeight=1,o.majorLineWidth=this.body.dom.backgroundHorizontal.offsetWidth-this.lineOffset-this.width+2*this.options.majorLinesOffset,o.majorLineHeight=1,"left"===s?(n.style.top="0",n.style.left="0",n.style.bottom="",n.style.width=this.width+"px",n.style.height=this.height+"px",this.props.width=this.body.domProps.left.width,this.props.height=this.body.domProps.left.height):(n.style.top="",n.style.bottom="0",n.style.left="0",n.style.width=this.width+"px",n.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,this.options.icons===!0?this._redrawGroupIcons():this._cleanupIcons(),this._redrawTitle(s)}return t},o.prototype._redrawLabels=function(){var t=!1;s.prepareElements(this.DOMelements.lines),s.prepareElements(this.DOMelements.labels);var e,i=this.options.orientation;if(this.master===!1){var o,n,r,h;-1!==this.zeroCrossing&&this.options.alignZeros===!0?this.range.end>0?(o=this.range.end/this.zeroCrossing,n=this.range.end-this.amountOfSteps*o,r=this.range.end):(o=-1*this.range.start/(this.amountOfSteps-this.zeroCrossing),n=this.range.start,r=this.range.start+o*this.amountOfSteps):(n=this.range.start,r=this.range.end),h=this.stepPixels}else h=this.props.majorCharHeight,n=this.range.start,r=this.range.end;if(this.step=e=new a(n,r,h,this.dom.frame.offsetHeight,this.options[this.options.orientation].range,this.options[this.options.orientation].format,this.master===!1&&this.options.alignZeros),this.master===!0)this.stepPixels=this.dom.frame.offsetHeight/e.marginRange*e.step,this.amountOfSteps=Math.ceil(this.dom.frame.offsetHeight/this.stepPixels);else if(this.options.alignZeros===!0&&-1!==this.zeroCrossing){var d=(e.current-this.zeroCrossing*e.step)/e.step;this.step.shift(d)}this.valueAtBottom=e.marginEnd,this.maxLabelSize=0;for(var l=0,u=0,c=!1;u0&&u!==this.amountOfSteps&&((this.options.showMinorLabels&&c===!1||this.master===!1&&this.options.showMinorLabels===!0)&&this._redrawLabel(l-2,e.getCurrent(),i,"vis-y-axis vis-minor",this.props.minorCharHeight),c&&this.options.showMajorLabels&&this.master===!0||this.options.showMinorLabels===!1&&this.master===!1&&c===!0?(l>=0&&this._redrawLabel(l-2,e.getCurrent(),i,"vis-y-axis vis-major",this.props.majorCharHeight),this._redrawLine(l,i,"vis-grid vis-horizontal vis-major",this.options.majorLinesOffset,this.props.majorLineWidth)):this._redrawLine(l,i,"vis-grid vis-horizontal vis-minor",this.options.minorLinesOffset,this.props.minorLineWidth)),this.master===!0&&0===e.current&&(this.zeroCrossing=u),e.next(),u+=1;this.master===!0&&0===e.current&&(this.zeroCrossing=u),this.conversionFactor=this.stepPixels/e.step;var p=0;void 0!==this.options[i].title&&void 0!==this.options[i].title.text&&(p=this.props.titleCharHeight);var f=this.options.icons===!0?Math.max(this.options.iconWidth,p)+this.options.labelOffsetX+15:p+this.options.labelOffsetX+15;return this.maxLabelSize>this.width-f&&this.options.visible===!0?(this.width=this.maxLabelSize+f,this.options.width=this.width+"px",s.cleanupElements(this.DOMelements.lines),s.cleanupElements(this.DOMelements.labels),this.redraw(),t=!0):this.maxLabelSizethis.minWidth?(this.width=Math.max(this.minWidth,this.maxLabelSize+f),this.options.width=this.width+"px",s.cleanupElements(this.DOMelements.lines),s.cleanupElements(this.DOMelements.labels),this.redraw(),t=!0):(s.cleanupElements(this.DOMelements.lines),s.cleanupElements(this.DOMelements.labels),t=!1),t},o.prototype.convertValue=function(t){var e=this.valueAtBottom-t,i=e*this.conversionFactor;return i},o.prototype.screenToValue=function(t){return this.valueAtBottom-t/this.conversionFactor},o.prototype._redrawLabel=function(t,e,i,o,n){var r=s.getDOMElement("div",this.DOMelements.labels,this.dom.frame);r.className=o,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*n+this.options.labelOffsetY+"px",e+="";var a=Math.max(this.props.majorCharWidth,this.props.minorCharWidth);this.maxLabelSizes&&(h=s);for(var d=!1,l=h;Math.abs(l)<=Math.abs(s);l++){a=Math.pow(10,l);for(var u=0;u=n){d=!0,r=u;break}}if(d===!0)break}this.stepIndex=r,this.scale=a,this.step=a*this.minorSteps[r]},o.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,this.alignZeros===!0&&(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},o.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},o.prototype.hasNext=function(){return this.current>=this.marginStart},o.prototype.next=function(){var t=this.current;this.current-=this.step,this.current===t&&(this.current=this._end)},o.prototype.previous=function(){this.current+=this.step,this.marginEnd+=this.step,this.marginRange=this.marginEnd-this.marginStart},o.prototype.getCurrent=function(){var t=Math.abs(this.current)t)for(var e=0;-t>e;e++)this.previous();else if(t>0)for(var e=0;t>e;e++)this.next()},t.exports=o},function(t,e,i){function o(t,e,i,o){this.id=e;var s=["sampling","style","sort","yAxisOrientation","barChart","drawPoints","shaded","interpolation"];this.options=n.selectiveBridgeObject(s,i),this.usingDefaultStyle=void 0===t.className,this.groupsUsingDefaultStyles=o,this.zeroPosition=0,this.update(t),1==this.usingDefaultStyle&&(this.groupsUsingDefaultStyles[0]+=1),this.itemsData=[],this.visible=void 0===t.visible?!0:t.visible}var n=i(7),s=i(13),r=i(54),a=i(56),h=i(55);o.prototype.setItems=function(t){null!=t?(this.itemsData=t,1==this.options.sort&&this.itemsData.sort(function(t,e){return t.x-e.x})):this.itemsData=[]},o.prototype.setZeroPosition=function(t){this.zeroPosition=t},o.prototype.setOptions=function(t){if(void 0!==t){var e=["sampling","style","sort","yAxisOrientation","barChart"];n.selectiveDeepExtend(e,this.options,t),n.mergeOptions(this.options,t,"interpolation"),n.mergeOptions(this.options,t,"drawPoints"),n.mergeOptions(this.options,t,"shaded"),t.interpolation&&"object"==typeof t.interpolation&&t.interpolation.parametrization&&("uniform"==t.interpolation.parametrization?this.options.interpolation.alpha=0:"chordal"==t.interpolation.parametrization?this.options.interpolation.alpha=1:(this.options.interpolation.parametrization="centripetal",this.options.interpolation.alpha=.5))}"line"==this.options.style?this.type=new r(this.id,this.options):"bar"==this.options.style?this.type=new a(this.id,this.options):"points"==this.options.style&&(this.type=new h(this.id,this.options))},o.prototype.update=function(t){this.group=t,this.content=t.content||"graph",this.className=t.className||this.className||"vis-graph-group"+this.groupsUsingDefaultStyles[0]%10,this.visible=void 0===t.visible?!0:t.visible,this.style=t.style,this.setOptions(t.options)},o.prototype.drawIcon=function(t,e,i,o,n,r){var a,h,d=.5*r,l=s.getSVGElement("rect",i,o);if(l.setAttributeNS(null,"x",t),l.setAttributeNS(null,"y",e-d),l.setAttributeNS(null,"width",n),l.setAttributeNS(null,"height",2*d),l.setAttributeNS(null,"class","vis-outline"),"line"==this.options.style)a=s.getSVGElement("path",i,o),a.setAttributeNS(null,"class",this.className),void 0!==this.style&&a.setAttributeNS(null,"style",this.style),a.setAttributeNS(null,"d","M"+t+","+e+" L"+(t+n)+","+e),1==this.options.shaded.enabled&&(h=s.getSVGElement("path",i,o),"top"==this.options.shaded.orientation?h.setAttributeNS(null,"d","M"+t+", "+(e-d)+"L"+t+","+e+" L"+(t+n)+","+e+" L"+(t+n)+","+(e-d)):h.setAttributeNS(null,"d","M"+t+","+e+" L"+t+","+(e+d)+" L"+(t+n)+","+(e+d)+"L"+(t+n)+","+e),h.setAttributeNS(null,"class",this.className+" vis-icon-fill")),1==this.options.drawPoints.enabled&&s.drawPoint(t+.5*n,e,this,i,o);else{var u=Math.round(.3*n),c=Math.round(.4*r),p=Math.round(.75*r),f=Math.round((n-2*u)/3);s.drawBar(t+.5*u+f,e+d-c-1,u,c,this.className+" vis-bar",i,o,this.style),s.drawBar(t+1.5*u+f+2,e+d-p-1,u,p,this.className+" vis-bar",i,o,this.style)}},o.prototype.getLegend=function(t,e){var i=document.createElementNS("http://www.w3.org/2000/svg","svg");return this.drawIcon(0,.5*e,[],i,t,e),{icon:i,label:this.content,orientation:this.options.yAxisOrientation}},o.prototype.getYRange=function(t){return this.type.getYRange(t)},o.prototype.getData=function(t){return this.type.getData(t)},o.prototype.draw=function(t,e,i){this.type.draw(t,e,i)},t.exports=o},function(t,e,i){function o(t,e){this.groupId=t,this.options=e}var n=i(13),s=i(55);o.prototype.getData=function(t){for(var e=[],i=0;it[o].y?t[o].y:e,i=i0){t.sort(function(t,e){return t.x===e.x?t.groupIde[s].y?e[s].y:o,n=nt[r].accumulatedNegative?t[r].accumulatedNegative:o,o=o>t[r].accumulatedPositive?t[r].accumulatedPositive:o,n=n0&&(i=Math.min(i,Math.abs(e[o-1].x-e[o].x))),0===i&&(void 0===t[e[o].x]&&(t[e[o].x]={amount:0,resolved:0,accumulatedPositive:0,accumulatedNegative:0}),t[e[o].x].amount+=1)},o.prototype.draw=function(t,e,i){if(null!=t&&t.length>0){var r,a,h=Number(i.svg.style.height.replace("px",""));if(r=n.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.interpolation.enabled?o._catmullRom(t,e):o._linear(t),1==e.options.shaded.enabled){var d,l=n.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+" vis-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&&s.draw(t,e,i)}},o._catmullRomUniform=function(t){for(var e,i,o,n,s,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],o=t[l+1],n=d>l+2?t[l+2]:o,s={x:(-e.x+6*i.x+o.x)*h,y:(-e.y+6*i.y+o.y)*h},r={x:(i.x+6*o.x-n.x)*h,y:(i.y+6*o.y-n.y)*h},a+="C"+s.x+","+s.y+" "+r.x+","+r.y+" "+o.x+","+o.y+" ";return a},o._catmullRom=function(t,e){var i=e.options.interpolation.alpha;if(0==i||void 0===i)return this._catmullRomUniform(t);for(var o,n,s,r,a,h,d,l,u,c,p,f,m,v,g,y,b,w,_,x=Math.round(t[0].x)+","+Math.round(t[0].y)+" ",k=t.length,M=0;k-1>M;M++)o=0==M?t[0]:t[M-1],n=t[M],s=t[M+1],r=k>M+2?t[M+2]:s,d=Math.sqrt(Math.pow(o.x-n.x,2)+Math.pow(o.y-n.y,2)),l=Math.sqrt(Math.pow(n.x-s.x,2)+Math.pow(n.y-s.y,2)),u=Math.sqrt(Math.pow(s.x-r.x,2)+Math.pow(s.y-r.y,2)),v=Math.pow(u,i),y=Math.pow(u,2*i),g=Math.pow(l,i),b=Math.pow(l,2*i),_=Math.pow(d,i),w=Math.pow(d,2*i),c=2*w+3*_*g+b,p=2*y+3*v*g+b,f=3*_*(_+g),f>0&&(f=1/f),m=3*v*(v+g),m>0&&(m=1/m),a={x:(-b*o.x+c*n.x+w*s.x)*f,y:(-b*o.y+c*n.y+w*s.y)*f},h={x:(y*n.x+p*s.x-b*r.x)*m,y:(y*n.y+p*s.y-b*r.y)*m},0==a.x&&0==a.y&&(a=n),0==h.x&&0==h.y&&(h=s),x+="C"+a.x+","+a.y+" "+h.x+","+h.y+" "+s.x+","+s.y+" ";return x},o._linear=function(t){for(var e="",i=0;it[o].y?t[o].y:e,i=it[o].y?t[o].y:e,i=i0&&(r=Math.min(r,Math.abs(c[l-1].x-a))),h=o._getSafeDrawData(r,d,m);else{var g=l+(p[a].amount-p[a].resolved),y=l-(p[a].resolved+1);g0&&(r=Math.min(r,Math.abs(c[y].x-a))),h=o._getSafeDrawData(r,d,m),p[a].resolved+=1,d.options.stack===!0?c[l].y0&&(i=Math.min(i,Math.abs(e[o-1].x-e[o].x))),0===i&&(void 0===t[e[o].x]&&(t[e[o].x]={amount:0,resolved:0,accumulatedPositive:0,accumulatedNegative:0}),t[e[o].x].amount+=1)},o._getSafeDrawData=function(t,e,i){var o,n;return t0?(o=i>t?i:t,n=0,"left"===e.options.barChart.align?n-=.5*t:"right"===e.options.barChart.align&&(n+=.5*t)):(o=e.options.barChart.width,n=0,"left"===e.options.barChart.align?n-=.5*e.options.barChart.width:"right"===e.options.barChart.align&&(n+=.5*e.options.barChart.width)),{width:o,offset:n}},o.getStackedYRange=function(t,e,i,n,s){if(t.length>0){t.sort(function(t,e){return t.x===e.x?t.groupIde[s].y?e[s].y:o,n=nt[r].accumulatedNegative?t[r].accumulatedNegative:o,o=o>t[r].accumulatedPositive?t[r].accumulatedPositive:o,n=nt?-1:1});for(var i=0;i")}this.dom.textArea.innerHTML=s,this.dom.textArea.style.lineHeight=.75*this.options.iconSize+this.options.iconSpacing+"px"}},o.prototype.drawLegendIcons=function(){if(this.dom.frame.parentNode){var t=Object.keys(this.groups);t.sort(function(t,e){return e>t?-1:1}),s.prepareElements(this.svgElements);var e=window.getComputedStyle(this.dom.frame).paddingTop,i=Number(e.replace("px","")),o=i,n=this.options.iconSize,r=.75*this.options.iconSize,a=i+.5*r+3;this.svg.style.width=n+5+i+"px";for(var h=0;h0){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%this.defaultGroups.length;this.defaultIndex++,e={},e.color=this.defaultGroups[i],this.groups[t]=e}return e}},{key:"add",value:function(t,e){return this.groups[t]=e,this.groupsArray.push(t),e}}]),t}();e["default"]=r,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;it.left&&this.shape.topt.top}},{key:"isBoundingBoxOverlappingWith",value:function(t){return this.shape.boundingBox.leftt.left&&this.shape.boundingBox.topt.top}}],[{key:"parseOptions",value:function(t,e){var i=void 0===arguments[2]?!1:arguments[2],o=["color","font","fixed","shadow"];if(B.selectiveNotDeepExtend(o,t,e,i),B.mergeOptions(t,e,"shadow"),void 0!==e.color&&null!==e.color){var n=B.parseColor(e.color);B.fillIfDefined(t.color,n)}else i===!0&&null===e.color&&(t.color=void 0,delete t.color);void 0!==e.fixed&&null!==e.fixed&&("boolean"==typeof e.fixed?(t.fixed.x=e.fixed,t.fixed.y=e.fixed):(void 0!==e.fixed.x&&"boolean"==typeof e.fixed.x&&(t.fixed.x=e.fixed.x),void 0!==e.fixed.y&&"boolean"==typeof e.fixed.y&&(t.fixed.y=e.fixed.y))),void 0!==e.font&&a["default"].parseOptions(t.font,e),void 0!==e.scaling&&B.mergeOptions(t.scaling,e.scaling,"label")}}]),t}();e["default"]=R,t.exports=e["default"]},function(t,e,i){function o(t,e){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t)){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(h){n=!0,s=h}finally{try{!o&&a["return"]&&a["return"]()}finally{if(n)throw s}}return i}throw new TypeError("Invalid attempt to destructure non-iterable instance")}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;i=this.options.scaling.label.maxVisible&&(r=Number(this.options.scaling.label.maxVisible)/this.body.view.scale);var h=this.size.yLine,d=this._getColor(a),l=o(d,2),u=l[0],c=l[1],p=this._setAlignment(t,i,h,s),f=o(p,2);i=f[0],h=f[1],t.font=(e?"bold ":"")+r+"px "+this.options.font.face,t.fillStyle=u,t.textAlign="center",this.options.font.strokeWidth>0&&(t.lineWidth=this.options.font.strokeWidth,t.strokeStyle=c,t.lineJoin="round");for(var m=0;m0&&t.strokeText(this.lines[m],i,h),t.fillText(this.lines[m],i,h),h+=r}},{key:"_setAlignment",value:function(t,e,i,o){if("horizontal"!==this.options.font.align){e=0,i=0;var n=2;"top"===this.options.font.align?(t.textBaseline="alphabetic",i-=2*n):"bottom"===this.options.font.align?(t.textBaseline="hanging",i+=2*n):t.textBaseline="middle"}else t.textBaseline=o;return[e,i]}},{key:"_getColor",value:function(t){var e=this.options.font.color||"#000000",i=this.options.font.strokeColor||"#ffffff";if(t<=this.options.scaling.label.drawThreshold){var o=Math.max(0,Math.min(1,1-(this.options.scaling.label.drawThreshold-t)));e=r.overrideOpacity(e,o),i=r.overrideOpacity(i,o)}return[e,i]}},{key:"getTextSize",value:function(t){var e=void 0===arguments[1]?!1:arguments[1],i={width:this._processLabel(t,e),height:this.options.font.size*this.lineCount,lineCount:this.lineCount};return i}},{key:"calculateLabelSize",value:function(t,e){var i=void 0===arguments[2]?0:arguments[2],o=void 0===arguments[3]?0:arguments[3],n=void 0===arguments[4]?"middle":arguments[4];this.labelDirty===!0&&(this.size.width=this._processLabel(t,e)),this.size.height=this.options.font.size*this.lineCount,this.size.left=i-.5*this.size.width,this.size.top=o-.5*this.size.height,this.size.yLine=o+.5*(1-this.lineCount)*this.options.font.size,"hanging"===n&&(this.size.top+=.5*this.options.font.size,this.size.top+=4,this.size.yLine+=4),this.labelDirty=!1}},{key:"_processLabel",value:function(t,e){var i=0,o=[""],n=0;if(void 0!==this.options.label){o=String(this.options.label).split("\n"),n=o.length,t.font=(e?"bold ":"")+this.options.font.size+"px "+this.options.font.face,i=t.measureText(o[0]).width;for(var s=1;n>s;s++){var r=t.measureText(o[s]).width;i=r>i?r:i}}return this.lines=o,this.lineCount=n,i}}],[{key:"parseOptions",value:function(t,e){var i=void 0===arguments[2]?!1:arguments[2];if("string"==typeof e.font){var o=e.font.split(" ");t.size=o[0].replace("px",""),t.face=o[1],t.color=o[2]}else"object"==typeof e.font&&r.fillIfDefined(t,e.font,i);t.size=Number(t.size)}}]),t}();e["default"]=a,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;ithis.imageObj.height?(o=this.imageObj.width/this.imageObj.height,e=2*this.options.size*o||this.imageObj.width,i=2*this.options.size||this.imageObj.height):(o=this.imageObj.width&&this.imageObj.height?this.imageObj.height/this.imageObj.width:1,e=2*this.options.size||this.imageObj.width,i=2*this.options.size*o||this.imageObj.height),this.width=e, -this.height=i,this.radius=.5*this.width}}},{key:"_drawRawCircle",value:function(t,e,i,o,n,s){var r=this.options.borderWidth,a=this.options.borderWidthSelected||2*this.options.borderWidth;t.strokeStyle=o?this.options.color.highlight.border:n?this.options.color.hover.border:this.options.color.border,t.lineWidth=o?a:r,t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.fillStyle=o?this.options.color.highlight.background:n?this.options.color.hover.background:this.options.color.background,t.circle(e,i,s),this.enableShadow(t),t.fill(),this.disableShadow(t),t.stroke()}},{key:"_drawImageAtPosition",value:function(t){0!=this.imageObj.width&&(t.globalAlpha=1,this.enableShadow(t),t.drawImage(this.imageObj,this.left,this.top,this.width,this.height),this.disableShadow(t))}},{key:"_drawImageLabel",value:function(t,e,i,o){var n,s=0;if(void 0!==this.height){s=.5*this.height;var r=this.labelModule.getTextSize(t);r.lineCount>=1&&(s+=r.height/2)}n=i+s,this.options.label&&(this.labelOffset=s),this.labelModule.draw(t,e,n,o,"hanging")}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;ii.shape.height?(r=i.x+.5*i.shape.width,a=i.y-h):(r=i.x+h,a=i.y-.5*i.shape.height),s=this._pointOnCircle(r,a,h,.125),this.labelModule.draw(t,s.x,s.y,n)}}}},{key:"isOverlappingWith",value:function(t){if(this.connected){var e=10,i=this.from.x,o=this.from.y,n=this.to.x,s=this.to.y,r=t.left,a=t.top,h=this.edgeType.getDistanceToEdge(i,o,n,s,r,a);return e>h}return!1}},{key:"_rotateForLabelAlignment",value:function(t){var e=this.from.y-this.to.y,i=this.from.x-this.to.x,o=Math.atan2(e,i);(-1>o&&0>i||o>0&&0>i)&&(o+=Math.PI),t.rotate(o)}},{key:"_pointOnCircle",value:function(t,e,i,o){var n=2*o*Math.PI;return{x:t+i*Math.cos(n),y:e-i*Math.sin(n)}}},{key:"select",value:function(){this.selected=!0}},{key:"unselect",value:function(){this.selected=!1}}],[{key:"parseOptions",value:function(t,e){var i=void 0===arguments[2]?!1:arguments[2],o=["id","from","hidden","hoverWidth","label","length","line","opacity","physics","selectionWidth","selfReferenceSize","to","title","value","width"];if(f.selectiveDeepExtend(o,t,e,i),f.mergeOptions(t,e,"smooth"),f.mergeOptions(t,e,"shadow"),void 0!==e.dashes&&null!==e.dashes?t.dashes=e.dashes:i===!0&&null===e.dashes&&(t.dashes=void 0,delete t.dashes),void 0!==e.scaling&&null!==e.scaling?(void 0!==e.scaling.min&&(t.scaling.min=e.scaling.min),void 0!==e.scaling.max&&(t.scaling.max=e.scaling.max),f.mergeOptions(t.scaling,e.scaling,"label")):i===!0&&null===e.scaling&&(t.scaling=void 0,delete t.scaling),void 0!==e.arrows&&null!==e.arrows)if("string"==typeof e.arrows){var n=e.arrows.toLowerCase();-1!=n.indexOf("to")&&(t.arrows.to.enabled=!0),-1!=n.indexOf("middle")&&(t.arrows.middle.enabled=!0),-1!=n.indexOf("from")&&(t.arrows.from.enabled=!0)}else{if("object"!=typeof e.arrows)throw new Error("The arrow newOptions can only be an object or a string. Refer to the documentation. You used:"+JSON.stringify(e.arrows));f.mergeOptions(t.arrows,e.arrows,"to"),f.mergeOptions(t.arrows,e.arrows,"middle"),f.mergeOptions(t.arrows,e.arrows,"from")}else i===!0&&null===e.arrows&&(t.arrows=void 0,delete t.arrows);if(void 0!==e.color&&null!==e.color)if(f.isString(e.color))t.color.color=e.color,t.color.highlight=e.color,t.color.hover=e.color,t.color.inherit=!1;else{var s=!1;void 0!==e.color.color&&(t.color.color=e.color.color,s=!0),void 0!==e.color.highlight&&(t.color.highlight=e.color.highlight,s=!0),void 0!==e.color.hover&&(t.color.hover=e.color.hover,s=!0),void 0!==e.color.inherit&&(t.color.inherit=e.color.inherit),void 0!==e.color.opacity&&(t.color.opacity=Math.min(1,Math.max(0,e.color.opacity))),void 0===e.color.inherit&&s===!0&&(t.color.inherit=!1)}else i===!0&&null===e.color&&(t.color=void 0,delete t.color);void 0!==e.font&&a["default"].parseOptions(t.font,e)}}]),t}();e["default"]=m,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i=l&&h>d;){var m=.5*(l+u);if(i=this.getPoint(m,a),o=Math.atan2(p.y-i.y,p.x-i.x),n=p.distanceToBorder(e,o),s=Math.sqrt(Math.pow(i.x-p.x,2)+Math.pow(i.y-p.y,2)),r=n-s,Math.abs(r)r?f===!1?l=m:u=m:f===!1?u=m:l=m,d++}return i.t=m,i}},{key:"_getDistanceToBezierEdge",value:function(t,e,i,o,n,s,r){var a=void 0,h=void 0;a=r.x,h=r.y;var d=1e9,l=void 0,u=void 0,c=void 0,p=void 0,f=void 0,m=t,v=e;for(u=1;10>u;u++)c=.1*u,p=Math.pow(1-c,2)*t+2*c*(1-c)*a+Math.pow(c,2)*i,f=Math.pow(1-c,2)*e+2*c*(1-c)*h+Math.pow(c,2)*o,u>0&&(l=this._getDistanceToLine(m,v,p,f,n,s),d=d>l?l:d),m=p,v=f;return d}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t,e){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t)){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(h){n=!0,s=h}finally{try{!o&&a["return"]&&a["return"]()}finally{if(n)throw s}}return i}throw new TypeError("Invalid attempt to destructure non-iterable instance")}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;io.shape.height?(e=o.x+.5*o.shape.width,i=o.y-n):(e=o.x+n,i=o.y-.5*o.shape.height),[e,i,n]}},{key:"_pointOnCircle",value:function(t,e,i,o){var n=2*o*Math.PI;return{x:t+i*Math.cos(n),y:e-i*Math.sin(n)}}},{key:"_findBorderPositionCircle",value:function(t,e,i){for(var o=i.x,n=i.y,s=i.low,r=i.high,a=i.direction,h=10,d=0,l=this.options.selfReferenceSize,u=void 0,c=void 0,p=void 0,f=void 0,m=void 0,v=.05,g=.5*(s+r);r>=s&&h>d&&(g=.5*(s+r),u=this._pointOnCircle(o,n,l,g),c=Math.atan2(t.y-u.y,t.x-u.x),p=t.distanceToBorder(e,c),f=Math.sqrt(Math.pow(u.x-t.x,2)+Math.pow(u.y-t.y,2)),m=p-f,!(Math.abs(m)0?a>0?s=g:r=g:a>0?r=g:s=g,d++;return u.t=g,u}},{key:"getLineWidth",value:function(t,e){return t===!0?Math.max(this.selectionWidth,.3/this.body.view.scale):e===!0?Math.max(this.hoverWidth,.3/this.body.view.scale):Math.max(this.options.width,.3/this.body.view.scale)}},{key:"getColor",value:function(t,e,i){var o=this.options.color;if(o.inherit!==!1){if("both"===o.inherit&&this.from.id!==this.to.id){var n=t.createLinearGradient(this.from.x,this.from.y,this.to.x,this.to.y),s=void 0,a=void 0;return s=this.from.options.color.highlight.border,a=this.to.options.color.highlight.border,this.from.selected===!1&&this.to.selected===!1?(s=r.overrideOpacity(this.from.options.color.border,this.options.color.opacity),a=r.overrideOpacity(this.to.options.color.border,this.options.color.opacity)):this.from.selected===!0&&this.to.selected===!1?a=this.to.options.color.border:this.from.selected===!1&&this.to.selected===!0&&(s=this.from.options.color.border),n.addColorStop(0,s),n.addColorStop(1,a),n}this.colorDirty===!0&&("to"===o.inherit?(this.color.highlight=this.to.options.color.highlight.border,this.color.hover=this.to.options.color.hover.border,this.color.color=r.overrideOpacity(this.to.options.color.border,o.opacity)):(this.color.highlight=this.from.options.color.highlight.border,this.color.hover=this.from.options.color.hover.border,this.color.color=r.overrideOpacity(this.from.options.color.border,o.opacity)))}else this.colorDirty===!0&&(this.color.highlight=o.highlight,this.color.hover=o.hover,this.color.color=r.overrideOpacity(o.color,o.opacity));return this.colorDirty=!1,e===!0?this.color.highlight:i===!0?this.color.hover:this.color.color}},{key:"_circle",value:function(t,e,i,o){this.enableShadow(t),t.beginPath(),t.arc(e,i,o,0,2*Math.PI,!1),t.stroke(),this.disableShadow(t)}},{key:"getDistanceToEdge",value:function(t,e,i,n,s,r,a){var h=0;if(this.from!=this.to)h=this._getDistanceToEdge(t,e,i,n,s,r,a);else{var d=this._getCircleData(),l=o(d,3),u=l[0],c=l[1],p=l[2],f=u-s,m=c-r;h=Math.abs(Math.sqrt(f*f+m*m)-p)}return this.labelModule.size.lefts&&this.labelModule.size.topr?0:h}},{key:"_getDistanceToLine",value:function(t,e,i,o,n,s){var r=i-t,a=o-e,h=r*r+a*a,d=((n-t)*r+(s-e)*a)/h;d>1?d=1:0>d&&(d=0);var l=t+d*r,u=e+d*a,c=l-n,p=u-s;return Math.sqrt(c*c+p*p)}},{key:"drawArrowHead",value:function(t,e,i,n,s){t.strokeStyle=this.getColor(t,n,s),t.fillStyle=t.strokeStyle,t.lineWidth=this.getLineWidth(n,s);var r=void 0,a=void 0,h=void 0,d=void 0,l=void 0,u=void 0,c=void 0;if("from"===e?(d=this.from,l=this.to,u=.1,c=this.options.arrows.from.scaleFactor):"to"===e?(d=this.to,l=this.from,u=-.1,c=this.options.arrows.to.scaleFactor):(d=this.to,l=this.from,c=this.options.arrows.middle.scaleFactor),d!=l){if("middle"!==e)if(this.options.smooth.enabled===!0){h=this.findBorderPosition(d,t,{via:i});var p=this.getPoint(Math.max(0,Math.min(1,h.t+u)),i);r=Math.atan2(h.y-p.y,h.x-p.x)}else r=Math.atan2(d.y-l.y,d.x-l.x),h=this.findBorderPosition(d,t);else r=Math.atan2(d.y-l.y,d.x-l.x),h=this.getPoint(.6,i);a=(10+5*this.options.width)*c,t.arrow(h.x,h.y,r,a),this.enableShadow(t),t.fill(),this.disableShadow(t),t.stroke()}else{var f=void 0,m=void 0,v=this._getCircleData(t),g=o(v,3),y=g[0],b=g[1],w=g[2];"from"===e?(m=this.findBorderPosition(this.from,t,{x:y,y:b,low:.25,high:.6,direction:-1}),f=-2*m.t*Math.PI+1.5*Math.PI+.1*Math.PI):"to"===e?(m=this.findBorderPosition(this.from,t,{x:y,y:b,low:.6,high:1,direction:1}),f=-2*m.t*Math.PI+1.5*Math.PI-1.1*Math.PI):(m=this._pointOnCircle(y,b,w,.175),f=3.9269908169872414);var _=(10+5*this.options.width)*c;t.arrow(m.x,m.y,f,_),this.enableShadow(t),t.fill(),this.disableShadow(t),t.stroke()}}},{key:"enableShadow",value:function(t){this.options.shadow.enabled===!0&&(t.shadowColor="rgba(0,0,0,0.5)",t.shadowBlur=this.options.shadow.size,t.shadowOffsetX=this.options.shadow.x,t.shadowOffsetY=this.options.shadow.y)}},{key:"disableShadow",value:function(t){this.options.shadow.enabled===!0&&(t.shadowColor="rgba(0,0,0,0)",t.shadowBlur=0,t.shadowOffsetX=0,t.shadowOffsetY=0)}}]),t}();e["default"]=a,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;ithis.to.y?this.from.xthis.to.x&&(t=this.from.x-i*s,e=this.from.y-i*s):this.from.ythis.to.x&&(t=this.from.x-i*s,e=this.from.y+i*s)),"discrete"===o&&(t=i*s>n?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*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"===o&&(e=i*n>s?this.from.y:e));else if("straightCross"===o)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*s,e=this.from.y-i*s,t=this.to.x>t?this.to.x:t):this.from.ythis.to.x&&(t=this.from.x-i*s,e=this.from.y+i*s,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*n,e=this.from.y-i*n,e=this.to.y>e?this.to.y:e):this.from.ythis.to.x&&(t=this.from.x-i*n,e=this.from.y+i*n,e=this.to.y1&&(this.startedStabilization=!1),this.stopSimulation())}},{key:"_emitStabilized",value:function(){var t=this;this.stabilizationIterations>1&&setTimeout(function(){t.body.emitter.emit("stabilized",{iterations:t.stabilizationIterations}),t.stabilizationIterations=0},0)}},{key:"physicsTick",value:function(){this.stabilized===!1&&(this.calculateForces(),this.stabilized=this.moveNodes(),this.stabilized===!0?this.revert():this.startedStabilization===!1&&(this.body.emitter.emit("startStabilizing"),this.startedStabilization=!0),this.stabilizationIterations++)}},{key:"updatePhysicsData",value:function(){this.physicsBody.forces={},this.physicsBody.physicsNodeIndices=[],this.physicsBody.physicsEdgeIndices=[];var t=this.body.nodes,e=this.body.edges;for(var i in t)t.hasOwnProperty(i)&&t[i].options.physics===!0&&this.physicsBody.physicsNodeIndices.push(i);for(var o in e)e.hasOwnProperty(o)&&e[o].options.physics===!0&&this.physicsBody.physicsEdgeIndices.push(o);for(var n=0;na&&o===!0,t=!0}return t===!0?n>.5*this.options.maxVelocity?!1:o:!0}},{key:"_performStep",value:function(t,e){var i=this.body.nodes[t],o=this.options.timestep,n=this.physicsBody.forces,s=this.physicsBody.velocities;if(this.previousStates[t]={x:i.x,y:i.y,vx:s[t].x,vy:s[t].y},i.options.fixed.x===!1){var r=this.modelOptions.damping*s[t].x,a=(n[t].x-r)/i.options.mass;s[t].x+=a*o,s[t].x=Math.abs(s[t].x)>e?s[t].x>0?e:-e:s[t].x,i.x+=s[t].x*o}else n[t].x=0,s[t].x=0;if(i.options.fixed.y===!1){var h=this.modelOptions.damping*s[t].y,d=(n[t].y-h)/i.options.mass;s[t].y+=d*o,s[t].y=Math.abs(s[t].y)>e?s[t].y>0?e:-e:s[t].y,i.y+=s[t].y*o}else n[t].y=0,s[t].y=0;var l=Math.sqrt(Math.pow(s[t].x,2)+Math.pow(s[t].y,2));return l}},{key:"calculateForces",value:function(){this.gravitySolver.solve(),this.nodesSolver.solve(),this.edgesSolver.solve()}},{key:"_freezeNodes",value:function(){var t=this.body.nodes;for(var e in t)t.hasOwnProperty(e)&&t[e].x&&t[e].y&&(this.freezeCache[e]={x:t[e].options.fixed.x,y:t[e].options.fixed.y},t[e].options.fixed.x=!0,t[e].options.fixed.y=!0)}},{key:"_restoreFrozenNodes",value:function(){var t=this.body.nodes;for(var e in t)t.hasOwnProperty(e)&&void 0!==this.freezeCache[e]&&(t[e].options.fixed.x=this.freezeCache[e].x,t[e].options.fixed.y=this.freezeCache[e].y);this.freezeCache={}}},{key:"stabilize",value:function(){var t=this,e=void 0===arguments[0]?this.options.stabilization.iterations:arguments[0];"number"!=typeof e&&(console.log("The stabilize method needs a numeric amount of iterations. Switching to default: ",this.options.stabilization.iterations),e=this.options.stabilization.iterations),this.body.emitter.emit("_resizeNodes"),this.stopSimulation(),this.stabilized=!1,this.body.emitter.emit("_blockRedrawRequests"),this.targetIterations=e,this.options.stabilization.onlyDynamicEdges===!0&&this._freezeNodes(),this.stabilizationIterations=0,setTimeout(function(){return t._stabilizationBatch()},0)}},{key:"_stabilizationBatch",value:function(){for(var t=0;this.stabilized===!1&&t0){var t=void 0,e=this.body.nodes,i=this.physicsBody.physicsNodeIndices,o=i.length,n=this._formBarnesHutTree(e,i);this.barnesHutTree=n;for(var s=0;o>s;s++)t=e[i[s]],t.options.mass>0&&(this._getForceContribution(n.root.children.NW,t),this._getForceContribution(n.root.children.NE,t),this._getForceContribution(n.root.children.SW,t),this._getForceContribution(n.root.children.SE,t))}}},{key:"_getForceContribution",value:function(t,e){if(t.childrenCount>0){var i=void 0,o=void 0,n=void 0;i=t.centerOfMass.x-e.x,o=t.centerOfMass.y-e.y,n=Math.sqrt(i*i+o*o),n*t.calcSize>this.thetaInversed?this._calculateForces(n,i,o,e,t):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)):t.children.data.id!=e.id&&this._calculateForces(n,i,o,e,t)}}},{key:"_calculateForces",value:function(t,e,i,o,n){0===t&&(t=.1,e=t),this.overlapAvoidanceFactor<1&&(t=Math.max(.1+this.overlapAvoidanceFactor*o.shape.radius,t-o.shape.radius));var s=this.options.gravitationalConstant*n.mass*o.options.mass/Math.pow(t,3),r=e*s,a=i*s;this.physicsBody.forces[o.id].x+=r,this.physicsBody.forces[o.id].y+=a}},{key:"_formBarnesHutTree",value:function(t,e){for(var i=void 0,o=e.length,n=t[e[0]].x,s=t[e[0]].y,r=t[e[0]].x,a=t[e[0]].y,h=1;o>h;h++){var d=t[e[h]].x,l=t[e[h]].y;t[e[h]].options.mass>0&&(n>d&&(n=d),d>r&&(r=d),s>l&&(s=l),l>a&&(a=l))}var u=Math.abs(r-n)-Math.abs(a-s);u>0?(s-=.5*u,a+=.5*u):(n+=.5*u,r-=.5*u);var c=1e-5,p=Math.max(c,Math.abs(r-n)),f=.5*p,m=.5*(n+r),v=.5*(s+a),g={root:{centerOfMass:{x:0,y:0},mass:0,range:{minX:m-f,maxX:m+f,minY:v-f,maxY:v+f},size:p,calcSize:1/p,children:{data:null},maxWidth:0,level:0,childrenCount:4}};this._splitBranch(g.root);for(var h=0;o>h;h++)i=t[e[h]],i.options.mass>0&&this._placeInTree(g.root,i);return g}},{key:"_updateBranchMass",value:function(t,e){var i=t.mass+e.options.mass,o=1/i;t.centerOfMass.x=t.centerOfMass.x*t.mass+e.x*e.options.mass,t.centerOfMass.x*=o,t.centerOfMass.y=t.centerOfMass.y*t.mass+e.y*e.options.mass,t.centerOfMass.y*=o,t.mass=i;var n=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")}},{key:"_placeInRegion",value: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+=.1,e.y+=.1):(this._splitBranch(t.children[i]),this._placeInTree(t.children[i],e));break;case 4:this._placeInTree(t.children[i],e)}}},{key:"_splitBranch",value: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)}},{key:"_insertRegion",value:function(t,e){var i=void 0,o=void 0,n=void 0,s=void 0,r=.5*t.size;switch(e){case"NW":i=t.range.minX,o=t.range.minX+r,n=t.range.minY,s=t.range.minY+r;break;case"NE":i=t.range.minX+r,o=t.range.maxX,n=t.range.minY,s=t.range.minY+r;break;case"SW":i=t.range.minX,o=t.range.minX+r,n=t.range.minY+r,s=t.range.maxY;break;case"SE":i=t.range.minX+r,o=t.range.maxX,n=t.range.minY+r,s=t.range.maxY}t.children[e]={centerOfMass:{x:0,y:0},mass:0,range:{minX:i,maxX:o,minY:n,maxY:s},size:.5*t.size,calcSize:2*t.calcSize,children:{data:null},maxWidth:0,level:t.level+1,childrenCount:0}}},{key:"_debug",value:function(t,e){void 0!==this.barnesHutTree&&(t.lineWidth=1,this._drawBranch(this.barnesHutTree.root,t,e))}},{key:"_drawBranch",value: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()}}]),t}();e["default"]=s,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;ii&&(s=.5*u>i?1:c*i+p,s/=i,o=t*s,n=e*s,l[r.id].x-=o,l[r.id].y-=n,l[a.id].x+=o,l[a.id].y+=n)}}}]),t}();e["default"]=s,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;ii?-Math.pow(f*i,2)+Math.pow(f*p,2):0,0===i?i=.01:s/=i,o=t*s,n=e*s,c[r.id].x-=o,c[r.id].y-=n,c[a.id].x+=o,c[a.id].y+=n}}}]),t}();e["default"]=s,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;i0){var s=n.edges.length+1,r=this.options.centralGravity*s*n.options.mass;o[n.id].x=e*r,o[n.id].y=i*r}}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;i=t&&i.push(n.id)}for(var o=0;o0&&Object.keys(s).length>0&&i.push({nodes:n,edges:s})}}}for(var o=0;oo?r.x:o,n=r.ys?r.y:s;return{x:.5*(i+o),y:.5*(n+s)}}},{key:"openCluster",value:function(t){var e=void 0===arguments[1]?!0:arguments[1];if(void 0===t)throw new Error("No clusterNodeId supplied to openCluster.");if(void 0===this.body.nodes[t])throw new Error("The clusterNodeId supplied to openCluster does not exist.");if(void 0===this.body.nodes[t].containedNodes)return void console.log("The node:"+t+" is not a cluster.");var i=this.body.nodes[t],o=i.containedNodes,n=i.containedEdges;for(var s in o)if(o.hasOwnProperty(s)){var r=this.body.nodes[s];r=o[s],r.x=i.x,r.y=i.y,r.vx=i.vx,r.vy=i.vy,r.options.hidden=!1,r.togglePhysics(!0),delete this.clusteredNodes[s]}for(var a in n)if(n.hasOwnProperty(a)){var d=n[a];if(void 0===this.body.nodes[d.fromId]||void 0===this.body.nodes[d.toId])d.edgeType.cleanup(),d.disconnect(),delete this.body.edges[a];else if(void 0!==this.clusteredNodes[d.fromId]||void 0!==this.clusteredNodes[d.toId]){var l=void 0,u=void 0,c=this.clusteredNodes[d.fromId]||this.clusteredNodes[d.toId],p=c.clusterId,f=this.body.nodes[p];if(f.containedEdges[a]=d,void 0!==this.clusteredNodes[d.fromId]?(l=p,u=d.toId):(l=d.fromId,u=p),this.body.nodes[l].options.hidden!==!0&&this.body.nodes[u].options.hidden!==!0){var m=this._cloneOptions(d,"edge"),v="clusterEdge:"+h.randomUUID();h.deepExtend(m,f.clusterEdgeProperties),h.deepExtend(m,{from:l,to:u,hidden:!1,physics:!0,id:v});var g=this.body.functions.createEdge(m);this.body.edges[v]=g,this.body.edges[v].connect()}}else d.options.hidden=!1,d.togglePhysics(!0)}for(var y=0;yo;)e.push(this.clusteredNodes[t].node),t=this.clusteredNodes[t].clusterId,o++;return e.push(this.body.nodes[t]),e}},{key:"_getConnectedId",value:function(t,e){return t.toId!=e?t.toId:t.fromId!=e?t.fromId:t.fromId}},{key:"_getHubSize",value:function(){for(var t=0,e=0,i=0,o=0,n=0;no&&(o=s.edges.length),t+=s.edges.length,e+=Math.pow(s.edges.length,2),i+=1}t/=i,e/=i;var r=e-Math.pow(t,2),a=Math.sqrt(r),h=Math.floor(t+2*a);return h>o&&(h=o),h}}]),t}();e["default"]=d,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(t,e,i){for(var o=!0;o;){var n=t,s=e,r=i;a=d=h=void 0,o=!1;var a=Object.getOwnPropertyDescriptor(n,s);if(void 0!==a){if("value"in a)return a.value;var h=a.get;return void 0===h?void 0:h.call(r)}var d=Object.getPrototypeOf(n);if(null===d)return void 0;t=d,e=s,i=r,o=!0}},a=i(62),h=o(a),d=function(t){function e(t,i,o,s,a){n(this,e),r(Object.getPrototypeOf(e.prototype),"constructor",this).call(this,t,i,o,s,a),this.isCluster=!0,this.containedNodes={},this.containedEdges={}}return s(e,t),e}(h["default"]);e["default"]=d,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;i0,t.renderTimer=void 0}),this.body.emitter.on("destroy",function(){t.renderRequests=0,t.renderingActive=!1,t.requiresTimeout===!0?clearTimeout(t.renderTimer):cancelAnimationFrame(t.renderTimer),t.body.emitter.off()})}},{key:"setOptions",value:function(t){if(void 0!==t){var e=["hideEdgesOnDrag","hideNodesOnDrag"];s.selectiveDeepExtend(e,this.options,t)}}},{key:"_startRendering",value:function(){this.renderingActive===!0&&void 0===this.renderTimer&&(this.requiresTimeout===!0?this.renderTimer=window.setTimeout(this._renderStep.bind(this),this.simulationInterval):this.renderTimer=window.requestAnimationFrame(this._renderStep.bind(this)))}},{key:"_renderStep",value:function(){this.renderingActive===!0&&(this.renderTimer=void 0,this.requiresTimeout===!0&&this._startRendering(),this._redraw(),this.requiresTimeout===!1&&this._startRendering())}},{key:"redraw",value:function(){this.body.emitter.emit("setSize"),this._redraw()}},{key:"_requestRedraw",value:function(){this.redrawRequested!==!0&&this.renderingActive===!1&&this.allowRedrawRequests===!0&&(this.redrawRequested=!0,this.requiresTimeout===!0?window.setTimeout(this._redraw.bind(this,!1),0):window.requestAnimationFrame(this._redraw.bind(this,!1)))}},{key:"_redraw",value:function(){var t=void 0===arguments[0]?!1:arguments[0];this.body.emitter.emit("initRedraw"),this.redrawRequested=!1;var e=this.canvas.frame.canvas.getContext("2d");(0===this.canvas.frame.canvas.width||0===this.canvas.frame.canvas.height)&&this.canvas.setSize(),void 0===this.pixelRatio&&(this.pixelRatio=(window.devicePixelRatio||1)/(e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1)),e.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);var i=this.canvas.frame.canvas.clientWidth,o=this.canvas.frame.canvas.clientHeight;e.clearRect(0,0,i,o),e.save(),e.translate(this.body.view.translation.x,this.body.view.translation.y),e.scale(this.body.view.scale,this.body.view.scale),e.beginPath(),this.body.emitter.emit("beforeDrawing",e),e.closePath(),t===!1&&(this.dragging===!1||this.dragging===!0&&this.options.hideEdgesOnDrag===!1)&&this._drawEdges(e),(this.dragging===!1||this.dragging===!0&&this.options.hideNodesOnDrag===!1)&&this._drawNodes(e,t),this.controlNodesActive===!0&&this._drawControlNodes(e),e.beginPath(),this.body.emitter.emit("afterDrawing",e),e.closePath(),e.restore(),t===!0&&e.clearRect(0,0,i,o)}},{key:"_resizeNodes",value:function(){var t=this.canvas.frame.canvas.getContext("2d");void 0===this.pixelRatio&&(this.pixelRatio=(window.devicePixelRatio||1)/(t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1)),t.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0),t.save(),t.translate(this.body.view.translation.x,this.body.view.translation.y),t.scale(this.body.view.scale,this.body.view.scale);var e=this.body.nodes,i=void 0;for(var o in e)e.hasOwnProperty(o)&&(i=e[o],i.resize(t),i.updateBoundingBox(t));t.restore()}},{key:"_drawNodes",value:function(t){for(var e=void 0===arguments[1]?!1:arguments[1],i=this.body.nodes,o=this.body.nodeIndices,n=void 0,s=[],r=20,a=this.canvas.DOMtoCanvas({x:-r,y:-r}),h=this.canvas.DOMtoCanvas({x:this.canvas.frame.canvas.clientWidth+r,y:this.canvas.frame.canvas.clientHeight+r}),d={top:a.y,left:a.x,bottom:h.y,right:h.x},l=0;l0)for(var r=0;rt.shape.boundingBox.left&&(n=t.shape.boundingBox.left),st.shape.boundingBox.top&&(i=t.shape.boundingBox.top),ot.shape.boundingBox.left&&(n=t.shape.boundingBox.left),st.shape.boundingBox.top&&(i=t.shape.boundingBox.top),o.5*this.body.nodeIndices.length)return void this.fit(i,!1);t=this._getRange(i.nodes);var a=this.body.nodeIndices.length;e=12.662/(a+7.4147)+.0964822;var h=Math.min(this.canvas.frame.canvas.clientWidth/600,this.canvas.frame.canvas.clientHeight/600);e*=h}else{this.body.emitter.emit("_resizeNodes"),t=this._getRange(i.nodes);var d=1.1*Math.abs(t.maxX-t.minX),l=1.1*Math.abs(t.maxY-t.minY),u=this.canvas.frame.canvas.clientWidth/d,c=this.canvas.frame.canvas.clientHeight/l;e=c>=u?u:c}e>1?e=1:0===e&&(e=1);var p=this._findCenter(t),f={position:p,scale:e,animation:i.animation};this.moveTo(f)}},{key:"focus",value:function(t){var e=void 0===arguments[1]?{}:arguments[1];if(void 0!==this.body.nodes[t]){var i={x:this.body.nodes[t].x,y:this.body.nodes[t].y};e.position=i,e.lockedOnNode=t,this.moveTo(e)}else console.log("Node: "+t+" cannot be found.")}},{key:"moveTo",value:function(t){return void 0===t?void(t={}):(void 0===t.offset&&(t.offset={x:0,y:0}),void 0===t.offset.x&&(t.offset.x=0),void 0===t.offset.y&&(t.offset.y=0),void 0===t.scale&&(t.scale=this.body.view.scale),void 0===t.position&&(t.position=this.getViewPosition()),void 0===t.animation&&(t.animation={duration:0}),t.animation===!1&&(t.animation={duration:0}),t.animation===!0&&(t.animation={}),void 0===t.animation.duration&&(t.animation.duration=1e3),void 0===t.animation.easingFunction&&(t.animation.easingFunction="easeInOutQuad"),void this.animateView(t))}},{key:"animateView",value:function(t){if(void 0!==t){this.animationEasingFunction=t.animation.easingFunction,this.releaseNode(),t.locked===!0&&(this.lockedOnNodeId=t.lockedOnNode,this.lockedOnNodeOffset=t.offset),0!=this.easingTime&&this._transitionRedraw(!0),this.sourceScale=this.body.view.scale,this.sourceTranslation=this.body.view.translation,this.targetScale=t.scale,this.body.view.scale=this.targetScale;var e=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight}),i={x:e.x-t.position.x,y:e.y-t.position.y};this.targetTranslation={x:this.sourceTranslation.x+i.x*this.targetScale+t.offset.x,y:this.sourceTranslation.y+i.y*this.targetScale+t.offset.y},0===t.animation.duration?void 0!=this.lockedOnNodeId?(this.viewFunction=this._lockedRedraw.bind(this),this.body.emitter.on("initRedraw",this.viewFunction)):(this.body.view.scale=this.targetScale,this.body.view.translation=this.targetTranslation,this.body.emitter.emit("_requestRedraw")):(this.animationSpeed=1/(60*t.animation.duration*.001)||1/60,this.animationEasingFunction=t.animation.easingFunction,this.viewFunction=this._transitionRedraw.bind(this),this.body.emitter.on("initRedraw",this.viewFunction),this.body.emitter.emit("_startRendering"))}}},{key:"_lockedRedraw",value:function(){var t={x:this.body.nodes[this.lockedOnNodeId].x,y:this.body.nodes[this.lockedOnNodeId].y},e=this.DOMtoCanvas({x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight}),i={x:e.x-t.x,y:e.y-t.y},o=this.body.view.translation,n={x:o.x+i.x*this.body.view.scale+this.lockedOnNodeOffset.x,y:o.y+i.y*this.body.view.scale+this.lockedOnNodeOffset.y};this.body.view.translation=n}},{key:"releaseNode",value:function(){void 0!==this.lockedOnNodeId&&void 0!==this.viewFunction&&(this.body.emitter.off("initRedraw",this.viewFunction),this.lockedOnNodeId=void 0,this.lockedOnNodeOffset=void 0)}},{key:"_transitionRedraw",value:function(){var t=void 0===arguments[0]?!1:arguments[0];this.easingTime+=this.animationSpeed,this.easingTime=t===!0?1:this.easingTime;var e=s.easingFunctions[this.animationEasingFunction](this.easingTime);this.body.view.scale=this.sourceScale+(this.targetScale-this.sourceScale)*e,this.body.view.translation={x:this.sourceTranslation.x+(this.targetTranslation.x-this.sourceTranslation.x)*e,y:this.sourceTranslation.y+(this.targetTranslation.y-this.sourceTranslation.y)*e},this.easingTime>=1&&(this.body.emitter.off("initRedraw",this.viewFunction),this.easingTime=0,void 0!=this.lockedOnNodeId&&(this.viewFunction=this._lockedRedraw.bind(this),this.body.emitter.on("initRedraw",this.viewFunction)),this.body.emitter.emit("animationFinished"))}},{key:"getScale",value:function(){return this.body.view.scale}},{key:"getViewPosition",value:function(){return this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight})}}]),t}();e["default"]=r,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;i50&&(this.drag.pointer=this.getPointer(t.center),this.drag.pinched=!1,this.pinch.scale=this.body.view.scale,this.touchTime=(new Date).valueOf())}},{key:"onTap",value:function(t){var e=this.getPointer(t.center),i=this.selectionHandler.options.multiselect&&(t.changedPointers[0].ctrlKey||t.changedPointers[0].metaKey);this.checkSelectionChanges(e,t,i),this.selectionHandler._generateClickEvent("click",t,e)}},{key:"onDoubleTap",value:function(t){var e=this.getPointer(t.center);this.selectionHandler._generateClickEvent("doubleClick",t,e)}},{key:"onHold",value:function(t){var e=this.getPointer(t.center),i=this.selectionHandler.options.multiselect;this.checkSelectionChanges(e,t,i),this.selectionHandler._generateClickEvent("click",t,e),this.selectionHandler._generateClickEvent("hold",t,e)}},{key:"onRelease",value:function(t){if((new Date).valueOf()-this.touchTime>10){var e=this.getPointer(t.center);this.selectionHandler._generateClickEvent("release",t,e),this.touchTime=(new Date).valueOf()}}},{key:"onContext",value:function(t){var e=this.getPointer({x:t.clientX,y:t.clientY});this.selectionHandler._generateClickEvent("oncontext",t,e)}},{key:"checkSelectionChanges",value:function(t,e){var i=void 0===arguments[2]?!1:arguments[2],o=this.selectionHandler._getSelectedEdgeCount(),n=this.selectionHandler._getSelectedNodeCount(),s=this.selectionHandler.getSelection(),r=void 0;r=i===!0?this.selectionHandler.selectAdditionalOnPoint(t):this.selectionHandler.selectOnPoint(t);var a=this.selectionHandler._getSelectedEdgeCount(),h=this.selectionHandler._getSelectedNodeCount(),d=this.selectionHandler.getSelection(),l=this._determineIfDifferent(s,d),u=l.nodesChanges,c=l.edgesChanges;h-n>0?(this.selectionHandler._generateClickEvent("selectNode",e,t),r=!0):0>h-n?(this.selectionHandler._generateClickEvent("deselectNode",e,t,s),r=!0):h===n&&u===!0&&(this.selectionHandler._generateClickEvent("deselectNode",e,t,s),this.selectionHandler._generateClickEvent("selectNode",e,t),r=!0),a-o>0?(this.selectionHandler._generateClickEvent("selectEdge",e,t),r=!0):0>a-o?(this.selectionHandler._generateClickEvent("deselectEdge",e,t,s),r=!0):a===o&&c===!0&&(this.selectionHandler._generateClickEvent("deselectEdge",e,t,s),this.selectionHandler._generateClickEvent("selectEdge",e,t),r=!0),r===!0&&this.selectionHandler._generateClickEvent("select",e,t)}},{key:"_determineIfDifferent",value:function(t,e){for(var i=!1,o=!1,n=0;nt&&(t=1e-5),t>10&&(t=10);var o=void 0;void 0!==this.drag&&this.drag.dragging===!0&&(o=this.canvas.DOMtoCanvas(this.drag.pointer));var n=this.body.view.translation,s=t/i,r=(1-s)*e.x+n.x*s,a=(1-s)*e.y+n.y*s;if(this.body.view.scale=t,this.body.view.translation={x:r,y:a},void 0!=o){var h=this.canvas.canvasToDOM(o);this.drag.pointer.x=h.x,this.drag.pointer.y=h.y}this.body.emitter.emit("_requestRedraw"),t>i?this.body.emitter.emit("zoom",{direction:"+",scale:this.body.view.scale}):this.body.emitter.emit("zoom",{direction:"-",scale:this.body.view.scale})}}},{key:"onMouseWheel",value:function(t){var e=0;if(t.wheelDelta?e=t.wheelDelta/120:t.detail&&(e=-t.detail/3),0!==e){var i=this.body.view.scale,o=e/10;0>e&&(o/=1-o),i*=1+o;var n=this.getPointer({x:t.clientX,y:t.clientY});this.zoom(i,n)}t.preventDefault()}},{key:"onMouseMove",value:function(t){var e=this,i=this.getPointer({x:t.clientX,y:t.clientY}),o=!1;if(void 0!==this.popup&&(this.popup.hidden===!1&&this._checkHidePopup(i),this.popup.hidden===!1&&(o=!0,this.popup.setPosition(i.x+3,i.y-5),this.popup.show())),this.options.keyboard.bindToWindow===!1&&this.options.keyboard.enabled===!0&&this.canvas.frame.focus(),o===!1&&(void 0!==this.popupTimer&&(clearInterval(this.popupTimer),this.popupTimer=void 0),this.drag.dragging||(this.popupTimer=setTimeout(function(){return e._checkShowPopup(i)},this.options.tooltipDelay))),this.options.hover===!0){var n=this.selectionHandler.getNodeAt(i);void 0===n&&(n=this.selectionHandler.getEdgeAt(i)),this.selectionHandler.hoverObject(n)}}},{key:"_checkShowPopup",value:function(t){var e=this.canvas._XconvertDOMtoCanvas(t.x),i=this.canvas._YconvertDOMtoCanvas(t.y),o={left:e,top:i,right:e,bottom:i},n=void 0===this.popupObj?void 0:this.popupObj.id,s=!1,r="node";if(void 0===this.popupObj){for(var a=this.body.nodeIndices,h=this.body.nodes,l=void 0,u=[],c=0;c0&&(this.popupObj=h[u[u.length-1]],s=!0)}if(void 0===this.popupObj&&s===!1){for(var p=this.body.edgeIndices,f=this.body.edges,m=void 0,v=[],c=0;c0&&(this.popupObj=f[v[v.length-1]],r="edge")}void 0!==this.popupObj?this.popupObj.id!==n&&(void 0===this.popup&&(this.popup=new d["default"](this.canvas.frame)),this.popup.popupTargetType=r,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.body.emitter.emit("showPopup",this.popupObj.id)):void 0!==this.popup&&(this.popup.hide(),this.body.emitter.emit("hidePopup"))}},{key:"_checkHidePopup",value:function(t){var e=this.selectionHandler._pointerToPositionObject(t),i=!1;if("node"===this.popup.popupTargetType){if(void 0!==this.body.nodes[this.popup.popupTargetId]&&(i=this.body.nodes[this.popup.popupTargetId].isOverlappingWith(e),i===!0)){var o=this.selectionHandler.getNodeAt(t);i=o.id===this.popup.popupTargetId}}else void 0===this.selectionHandler.getNodeAt(t)&&void 0!==this.body.edges[this.popup.popupTargetId]&&(i=this.body.edges[this.popup.popupTargetId].isOverlappingWith(e));i===!1&&(this.popupObj=void 0,this.popup.hide(),this.body.emitter.emit("hidePopup"))}}]),t}();e["default"]=u,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;i700&&(this.body.emitter.emit("fit",{duration:700}),this.touchTime=(new Date).valueOf())}},{key:"_stopMovement",value:function(){for(var t in this.boundFunctions)this.boundFunctions.hasOwnProperty(t)&&(this.body.emitter.off("initRedraw",this.boundFunctions[t]),this.body.emitter.emit("_stopRendering"));this.boundFunctions={}}},{key:"_moveUp",value:function(){this.body.view.translation.y+=this.options.keyboard.speed.y}},{key:"_moveDown",value:function(){this.body.view.translation.y-=this.options.keyboard.speed.y}},{key:"_moveLeft",value:function(){this.body.view.translation.x+=this.options.keyboard.speed.x}},{key:"_moveRight",value:function(){this.body.view.translation.x-=this.options.keyboard.speed.x}},{key:"_zoomIn",value:function(){this.body.view.scale*=1+this.options.keyboard.speed.zoom; -}},{key:"_zoomOut",value:function(){this.body.view.scale/=1+this.options.keyboard.speed.zoom}},{key:"configureKeyboardBindings",value:function(){void 0!==this.keycharm&&this.keycharm.destroy(),this.options.keyboard.enabled===!0&&(this.options.keyboard.bindToWindow===!0?this.keycharm=a({container:window,preventDefault:!0}):this.keycharm=a({container:this.canvas.frame,preventDefault:!0}),this.keycharm.reset(),this.activated===!0&&(this.keycharm.bind("up",this.bindToRedraw.bind(this,"_moveUp"),"keydown"),this.keycharm.bind("down",this.bindToRedraw.bind(this,"_moveDown"),"keydown"),this.keycharm.bind("left",this.bindToRedraw.bind(this,"_moveLeft"),"keydown"),this.keycharm.bind("right",this.bindToRedraw.bind(this,"_moveRight"),"keydown"),this.keycharm.bind("=",this.bindToRedraw.bind(this,"_zoomIn"),"keydown"),this.keycharm.bind("num+",this.bindToRedraw.bind(this,"_zoomIn"),"keydown"),this.keycharm.bind("num-",this.bindToRedraw.bind(this,"_zoomOut"),"keydown"),this.keycharm.bind("-",this.bindToRedraw.bind(this,"_zoomOut"),"keydown"),this.keycharm.bind("[",this.bindToRedraw.bind(this,"_zoomOut"),"keydown"),this.keycharm.bind("]",this.bindToRedraw.bind(this,"_zoomIn"),"keydown"),this.keycharm.bind("pageup",this.bindToRedraw.bind(this,"_zoomIn"),"keydown"),this.keycharm.bind("pagedown",this.bindToRedraw.bind(this,"_zoomOut"),"keydown"),this.keycharm.bind("up",this.unbindFromRedraw.bind(this,"_moveUp"),"keyup"),this.keycharm.bind("down",this.unbindFromRedraw.bind(this,"_moveDown"),"keyup"),this.keycharm.bind("left",this.unbindFromRedraw.bind(this,"_moveLeft"),"keyup"),this.keycharm.bind("right",this.unbindFromRedraw.bind(this,"_moveRight"),"keyup"),this.keycharm.bind("=",this.unbindFromRedraw.bind(this,"_zoomIn"),"keyup"),this.keycharm.bind("num+",this.unbindFromRedraw.bind(this,"_zoomIn"),"keyup"),this.keycharm.bind("num-",this.unbindFromRedraw.bind(this,"_zoomOut"),"keyup"),this.keycharm.bind("-",this.unbindFromRedraw.bind(this,"_zoomOut"),"keyup"),this.keycharm.bind("[",this.unbindFromRedraw.bind(this,"_zoomOut"),"keyup"),this.keycharm.bind("]",this.unbindFromRedraw.bind(this,"_zoomIn"),"keyup"),this.keycharm.bind("pageup",this.unbindFromRedraw.bind(this,"_zoomIn"),"keyup"),this.keycharm.bind("pagedown",this.unbindFromRedraw.bind(this,"_zoomOut"),"keyup")))}}]),t}();e["default"]=h,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;io&&(s=o-e-this.padding),sn&&(r=n-i-this.padding),r0?e===!0?this.body.nodes[o[o.length-1]]:o[o.length-1]:void 0}},{key:"_getEdgesOverlappingWith",value:function(t,e){for(var i=this.body.edges,o=0;o0?e===!0?this.body.edges[o[o.length-1]]:o[o.length-1]:void 0}},{key:"_addToSelection",value:function(t){t instanceof s?this.selectionObj.nodes[t.id]=t:this.selectionObj.edges[t.id]=t}},{key:"_addToHover",value:function(t){t instanceof s?this.hoverObj.nodes[t.id]=t:this.hoverObj.edges[t.id]=t}},{key:"_removeFromSelection",value:function(t){t instanceof s?delete this.selectionObj.nodes[t.id]:delete this.selectionObj.edges[t.id]}},{key:"unselectAll",value:function(){for(var t in this.selectionObj.nodes)this.selectionObj.nodes.hasOwnProperty(t)&&this.selectionObj.nodes[t].unselect();for(var e in this.selectionObj.edges)this.selectionObj.edges.hasOwnProperty(e)&&this.selectionObj.edges[e].unselect();this.selectionObj={nodes:{},edges:{}}}},{key:"_getSelectedNodeCount",value:function(){var t=0;for(var e in this.selectionObj.nodes)this.selectionObj.nodes.hasOwnProperty(e)&&(t+=1);return t}},{key:"_getSelectedNode",value:function(){for(var t in this.selectionObj.nodes)if(this.selectionObj.nodes.hasOwnProperty(t))return this.selectionObj.nodes[t];return void 0}},{key:"_getSelectedEdge",value:function(){for(var t in this.selectionObj.edges)if(this.selectionObj.edges.hasOwnProperty(t))return this.selectionObj.edges[t];return void 0}},{key:"_getSelectedEdgeCount",value:function(){var t=0;for(var e in this.selectionObj.edges)this.selectionObj.edges.hasOwnProperty(e)&&(t+=1);return t}},{key:"_getSelectedObjectCount",value: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}},{key:"_selectionIsEmpty",value: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}},{key:"_clusterInSelection",value:function(){for(var t in this.selectionObj.nodes)if(this.selectionObj.nodes.hasOwnProperty(t)&&this.selectionObj.nodes[t].clusterSize>1)return!0;return!1}},{key:"_selectConnectedEdges",value:function(t){for(var e=0;e0&&(this.options.hierarchical.levelSeparation*=-1):this.options.hierarchical.levelSeparation<0&&(this.options.hierarchical.levelSeparation*=-1),this.body.emitter.emit("_resetHierarchicalLayout"),this.adaptAllOptions(e);if(i===!0)return this.body.emitter.emit("refresh"),s.deepExtend(e,this.optionsBackup)}return e}},{key:"adaptAllOptions",value:function(t){if(this.options.hierarchical.enabled===!0){void 0===t.physics||t.physics===!0?(t.physics={solver:"hierarchicalRepulsion"},this.optionsBackup.physics={solver:"barnesHut"}):"object"==typeof t.physics?(this.optionsBackup.physics={solver:"barnesHut"},void 0!==t.physics.solver&&(this.optionsBackup.physics={solver:t.physics.solver}),t.physics.solver="hierarchicalRepulsion"):t.physics!==!1&&(this.optionsBackup.physics={solver:"barnesHut"},t.physics.solver="hierarchicalRepulsion");var e="horizontal";("RL"===this.options.hierarchical.direction||"LR"===this.options.hierarchical.direction)&&(e="vertical"),void 0===t.edges?(this.optionsBackup.edges={smooth:{enabled:!0,type:"dynamic"}},t.edges={smooth:!1}):void 0===t.edges.smooth?(this.optionsBackup.edges={smooth:{enabled:!0,type:"dynamic"}},t.edges.smooth=!1):"boolean"==typeof t.edges.smooth?(this.optionsBackup.edges={smooth:t.edges.smooth},t.edges.smooth={enabled:t.edges.smooth,type:e}):(void 0!==t.edges.smooth.type&&"dynamic"!==t.edges.smooth.type&&(e=t.edges.smooth.type),this.optionsBackup.edges={smooth:void 0===t.edges.smooth.enabled?!0:t.edges.smooth.enabled,type:void 0===t.edges.smooth.type?"dynamic":t.edges.smooth.type,roundness:void 0===t.edges.smooth.roundness?.5:t.edges.smooth.roundness},t.edges.smooth={enabled:void 0===t.edges.smooth.enabled?!0:t.edges.smooth.enabled,type:e,roundness:void 0===t.edges.smooth.roundness?.5:t.edges.smooth.roundness}),this.body.emitter.emit("_forceDisableDynamicCurves",e)}return t}},{key:"seededRandom",value:function(){var t=1e4*Math.sin(this.randomSeed++);return t-Math.floor(t)}},{key:"positionInitially",value:function(t){if(this.options.hierarchical.enabled!==!0){this.randomSeed=this.initialRandomSeed;for(var e=0;e0){var t=void 0,e=void 0,i=!1,o=!1;this.hierarchicalLevels={},this.nodeSpacing=100;for(e in this.body.nodes)this.body.nodes.hasOwnProperty(e)&&(t=this.body.nodes[e],void 0!==t.options.level?(i=!0,this.hierarchicalLevels[e]=t.options.level):o=!0);if(o===!0&&i===!0)throw new Error("To use the hierarchical layout, nodes require either no predefined levels or levels have to be defined for all nodes.");o===!0&&("hubsize"===this.options.hierarchical.sortMethod?this._determineLevelsByHubsize():("directed"===this.options.hierarchical.sortMethod,0||this._determineLevelsDirected()));var n=this._getDistribution();this._placeNodesByHierarchy(n)}}},{key:"_placeNodesByHierarchy",value:function(t){var e=void 0,i=void 0;this.positionedNodes={};for(var o in t)if(t.hasOwnProperty(o))for(e in t[o].nodes)t[o].nodes.hasOwnProperty(e)&&(i=t[o].nodes[e],"UD"===this.options.hierarchical.direction||"DU"===this.options.hierarchical.direction?(void 0===i.x&&(i.x=t[o].distance),t[o].distance=i.x+this.nodeSpacing):(void 0===i.y&&(i.y=t[o].distance),t[o].distance=i.y+this.nodeSpacing),this.positionedNodes[e]=!0,this._placeBranchNodes(i.edges,i.id,t,o))}},{key:"_getDistribution",value:function(){var t={},e=void 0,i=void 0;for(e in this.body.nodes)if(this.body.nodes.hasOwnProperty(e)){i=this.body.nodes[e];var o=void 0===this.hierarchicalLevels[e]?0:this.hierarchicalLevels[e];"UD"===this.options.hierarchical.direction||"DU"===this.options.hierarchical.direction?(i.y=this.options.hierarchical.levelSeparation*o,i.options.fixed.y=!0):(i.x=this.options.hierarchical.levelSeparation*o,i.options.fixed.x=!0),void 0===t[o]&&(t[o]={amount:0,nodes:{},distance:0}),t[o].amount+=1,t[o].nodes[e]=i}return t}},{key:"_getHubSize",value:function(){var t=0;for(var e in this.body.nodes)if(this.body.nodes.hasOwnProperty(e)){var i=this.body.nodes[e];void 0===this.hierarchicalLevels[e]&&(t=i.edges.length0&&(i=this._getHubSize(),0!==i);)for(t in this.body.nodes)this.body.nodes.hasOwnProperty(t)&&(e=this.body.nodes[t],e.edges.length===i&&this._setLevelByHubsize(0,e))}},{key:"_setLevelByHubsize",value:function(t,e){if(void 0===this.hierarchicalLevels[e.id]){var i=void 0;this.hierarchicalLevels[e.id]=t;for(var o=0;oo&&("UD"===this.options.hierarchical.direction||"DU"===this.options.hierarchical.direction?(void 0===s.x&&(s.x=Math.max(i[a].distance,r.x)),i[a].distance=s.x+this.nodeSpacing,this.positionedNodes[s.id]=!0):(void 0===s.y&&(s.y=Math.max(i[a].distance,r.y)),i[a].distance=s.y+this.nodeSpacing),this.positionedNodes[s.id]=!0,s.edges.length>1&&this._placeBranchNodes(s.edges,s.id,i,a))}}}]),t}();e["default"]=r,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;i0){for(var n=0;n0&&"function"==typeof this.options.deleteEdge&&(o=this.options.deleteEdge);if("function"==typeof o){var s={nodes:e,edges:i};if(2!==o.length)throw new Error("The function for delete does not support two arguments (data, callback)");o(s,function(e){null!==e&&void 0!==e&&"delete"===t.inMode&&(t.body.data.edges.remove(e.edges),t.body.data.nodes.remove(e.nodes),t.body.emitter.emit("startSimulation"),t.showManipulatorToolbar())})}else this.body.data.edges.remove(i),this.body.data.nodes.remove(e),this.body.emitter.emit("startSimulation"),this.showManipulatorToolbar()}},{key:"_setup",value:function(){this.options.enabled===!0?(this.guiEnabled=!0,this._createWrappers(),this.editMode===!1?this._createEditButton():this.showManipulatorToolbar()):(this._removeManipulationDOM(),this.guiEnabled=!1)}},{key:"_createWrappers",value:function(){void 0===this.manipulationDiv&&(this.manipulationDiv=document.createElement("div"),this.manipulationDiv.className="vis-manipulation",this.editMode===!0?this.manipulationDiv.style.display="block":this.manipulationDiv.style.display="none",this.canvas.frame.appendChild(this.manipulationDiv)),void 0===this.editModeDiv&&(this.editModeDiv=document.createElement("div"),this.editModeDiv.className="vis-edit-mode",this.editMode===!0?this.editModeDiv.style.display="none":this.editModeDiv.style.display="block",this.canvas.frame.appendChild(this.editModeDiv)),void 0===this.closeDiv&&(this.closeDiv=document.createElement("div"),this.closeDiv.className="vis-close",this.closeDiv.style.display=this.manipulationDiv.style.display,this.canvas.frame.appendChild(this.closeDiv))}},{key:"_getNewTargetNode",value:function(t,e){var i=s.deepExtend({},this.options.controlNodeStyle);return i.id="targetNode"+s.randomUUID(),i.hidden=!1,i.physics=!1,i.x=t,i.y=e,this.body.functions.createNode(i)}},{key:"_createEditButton",value:function(){this._clean(),this.manipulationDOM={},s.recursiveDOMDelete(this.editModeDiv);var t=this.options.locales[this.options.locale],e=this._createButton("editMode","vis-button vis-edit vis-edit-mode",t.edit||this.options.locales.en.edit);this.editModeDiv.appendChild(e),this._bindHammerToDiv(e,this.toggleEditMode.bind(this))}},{key:"_clean",value:function(){this.inMode=!1,this.guiEnabled===!0&&(s.recursiveDOMDelete(this.editModeDiv),s.recursiveDOMDelete(this.manipulationDiv),this._cleanManipulatorHammers()),this._cleanupTemporaryNodesAndEdges(),this._unbindTemporaryUIs(),this._unbindTemporaryEvents(),this.body.emitter.emit("restorePhysics")}},{key:"_cleanManipulatorHammers",value:function(){if(0!=this.manipulationHammers.length){for(var t=0;t=0;r--)if(n[r]!==this.selectedControlNode.id){s=this.body.nodes[n[r]];break}if(void 0!==s&&void 0!==this.selectedControlNode)if(s.isCluster===!0)alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError);else{var a=this.body.nodes[this.temporaryIds.nodes[0]];this.selectedControlNode.id===a.id?this._performEditEdge(s.id,o.to.id):this._performEditEdge(o.from.id,s.id)}else o.updateEdgeType(),this.body.emitter.emit("restorePhysics");this.body.emitter.emit("_redraw")}},{key:"_handleConnect",value:function(t){if((new Date).valueOf()-this.touchTime>100){this.lastTouch=this.body.functions.getPointer(t.center),this.lastTouch.translation=s.extend({},this.body.view.translation);var e=this.lastTouch,i=this.selectionHandler.getNodeAt(e);if(void 0!==i)if(i.isCluster===!0)alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError);else{var o=this._getNewTargetNode(i.x,i.y);this.body.nodes[o.id]=o,this.body.nodeIndices.push(o.id);var n=this.body.functions.createEdge({id:"connectionEdge"+s.randomUUID(),from:i.id,to:o.id,physics:!1,smooth:{enabled:!0,type:"continuous",roundness:.5}});this.body.edges[n.id]=n,this.body.edgeIndices.push(n.id),this.temporaryIds.nodes.push(o.id),this.temporaryIds.edges.push(n.id)}this.touchTime=(new Date).valueOf()}}},{key:"_dragControlNode",value:function(t){var e=this.body.functions.getPointer(t.center);if(void 0!==this.temporaryIds.nodes[0]){var i=this.body.nodes[this.temporaryIds.nodes[0]];i.x=this.canvas._XconvertDOMtoCanvas(e.x),i.y=this.canvas._YconvertDOMtoCanvas(e.y),this.body.emitter.emit("_redraw")}else{var o=e.x-this.lastTouch.x,n=e.y-this.lastTouch.y;this.body.view.translation={x:this.lastTouch.translation.x+o,y:this.lastTouch.translation.y+n}}}},{key:"_finishConnect",value:function(t){var e=this.body.functions.getPointer(t.center),i=this.selectionHandler._pointerToPositionObject(e),o=void 0;void 0!==this.temporaryIds.edges[0]&&(o=this.body.edges[this.temporaryIds.edges[0]].fromId);for(var n=this.selectionHandler._getAllNodesOverlappingWith(i),s=void 0,r=n.length-1;r>=0;r--)if(-1===this.temporaryIds.nodes.indexOf(n[r])){s=this.body.nodes[n[r]];break}this._cleanupTemporaryNodesAndEdges(),void 0!==s&&(s.isCluster===!0?alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError):void 0!==this.body.nodes[o]&&void 0!==this.body.nodes[s.id]&&this._performAddEdge(o,s.id)),this.body.emitter.emit("_redraw")}},{key:"_performAddNode",value:function(t){var e=this,i={id:s.randomUUID(),x:t.pointer.canvas.x,y:t.pointer.canvas.y,label:"new"};if("function"==typeof this.options.addNode){if(2!==this.options.addNode.length)throw new Error("The function for add does not support two arguments (data,callback)");this.options.addNode(i,function(t){null!==t&&void 0!==t&&"addNode"===e.inMode&&(e.body.data.nodes.add(t),e.showManipulatorToolbar())})}else this.body.data.nodes.add(i),this.showManipulatorToolbar()}},{key:"_performAddEdge",value:function(t,e){var i=this,o={from:t,to:e};if("function"==typeof this.options.addEdge){if(2!==this.options.addEdge.length)throw new Error("The function for connect does not support two arguments (data,callback)");this.options.addEdge(o,function(t){null!==t&&void 0!==t&&"addEdge"===i.inMode&&(i.body.data.edges.add(t),i.selectionHandler.unselectAll(),i.showManipulatorToolbar())})}else this.body.data.edges.add(o),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}},{key:"_performEditEdge",value:function(t,e){var i=this,o={id:this.edgeBeingEditedId,from:t,to:e};if("function"==typeof this.options.editEdge){if(2!==this.options.editEdge.length)throw new Error("The function for edit does not support two arguments (data, callback)");this.options.editEdge(o,function(t){null===t||void 0===t||"editEdge"!==i.inMode?(i.body.edges[o.id].updateEdgeType(),i.body.emitter.emit("_redraw")):(i.body.data.edges.update(t),i.selectionHandler.unselectAll(),i.showManipulatorToolbar())})}else this.body.data.edges.update(o),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}}]),t}();e["default"]=h,t.exports=e["default"]},function(t,e,i){Object.defineProperty(e,"__esModule",{value:!0});var o="string",n="boolean",s="number",r="array",a="object",h="dom",d="function",l="undefined",u={configure:{enabled:{"boolean":n},filter:{"boolean":n,string:o,array:r,fn:d},container:{dom:h},showButton:{"boolean":n},__type__:{object:a,"boolean":n,string:o,array:r,fn:d}},edges:{arrows:{to:{enabled:{"boolean":n},scaleFactor:{number:s},__type__:{object:a,"boolean":n}},middle:{enabled:{"boolean":n},scaleFactor:{number:s},__type__:{object:a,"boolean":n}},from:{enabled:{"boolean":n},scaleFactor:{number:s},__type__:{object:a,"boolean":n}},__type__:{string:["from","to","middle"],object:a}},color:{color:{string:o},highlight:{string:o},hover:{string:o},inherit:{string:["from","to","both"],"boolean":n},opacity:{number:s},__type__:{object:a,string:o}},dashes:{"boolean":n,array:r},font:{color:{string:o},size:{number:s},face:{string:o},background:{string:o},strokeWidth:{number:s},strokeColor:{string:o},align:{string:["horizontal","top","middle","bottom"]},__type__:{object:a,string:o}},hidden:{"boolean":n},hoverWidth:{fn:d,number:s},label:{string:o,undef:l},length:{number:s,undef:l},physics:{"boolean":n},scaling:{min:{number:s},max:{number:s},label:{enabled:{"boolean":n},min:{number:s},max:{number:s},maxVisible:{number:s},drawThreshold:{number:s},__type__:{object:a,"boolean":n}},customScalingFunction:{fn:d},__type__:{object:a}},selectionWidth:{fn:d,number:s},selfReferenceSize:{number:s},shadow:{enabled:{"boolean":n},size:{number:s},x:{number:s},y:{number:s},__type__:{object:a,"boolean":n}},smooth:{enabled:{"boolean":n},type:{string:["dynamic","continuous","discrete","diagonalCross","straightCross","horizontal","vertical","curvedCW","curvedCCW"]},roundness:{number:s},__type__:{object:a,"boolean":n}},title:{string:o,undef:l},width:{number:s},value:{number:s,undef:l},__type__:{object:a}},groups:{useDefaultGroups:{"boolean":n},__any__:"get from nodes, will be overwritten below",__type__:{object:a}},interaction:{dragNodes:{"boolean":n},dragView:{"boolean":n},hideEdgesOnDrag:{"boolean":n},hideNodesOnDrag:{"boolean":n},hover:{"boolean":n},keyboard:{enabled:{"boolean":n},speed:{x:{number:s},y:{number:s},zoom:{number:s},__type__:{object:a}},bindToWindow:{"boolean":n},__type__:{object:a,"boolean":n}},multiselect:{"boolean":n},navigationButtons:{"boolean":n},selectable:{"boolean":n},selectConnectedEdges:{"boolean":n},hoverConnectedEdges:{"boolean":n},tooltipDelay:{number:s},zoomView:{"boolean":n},__type__:{object:a}},layout:{randomSeed:{undef:l,number:s},hierarchical:{enabled:{"boolean":n},levelSeparation:{number:s},direction:{string:["UD","DU","LR","RL"]},sortMethod:{string:["hubsize","directed"]},__type__:{object:a,"boolean":n}},__type__:{object:a}},manipulation:{enabled:{"boolean":n},initiallyActive:{"boolean":n},addNode:{"boolean":n,fn:d},addEdge:{"boolean":n,fn:d},editNode:{fn:d},editEdge:{"boolean":n,fn:d},deleteNode:{"boolean":n,fn:d},deleteEdge:{"boolean":n,fn:d},controlNodeStyle:"get from nodes, will be overwritten below",__type__:{object:a,"boolean":n}},nodes:{borderWidth:{number:s},borderWidthSelected:{number:s,undef:l},brokenImage:{string:o,undef:l},color:{border:{string:o},background:{string:o},highlight:{border:{string:o},background:{string:o},__type__:{object:a,string:o}},hover:{border:{string:o},background:{string:o},__type__:{object:a,string:o}},__type__:{object:a,string:o}},fixed:{x:{"boolean":n},y:{"boolean":n},__type__:{object:a,"boolean":n}},font:{color:{string:o},size:{number:s},face:{string:o},background:{string:o},strokeWidth:{number:s},strokeColor:{string:o},__type__:{object:a,string:o}},group:{string:o,number:s,undef:l},hidden:{"boolean":n},icon:{face:{string:o},code:{string:o},size:{number:s},color:{string:o},__type__:{object:a}},id:{string:o,number:s},image:{string:o,undef:l},label:{string:o,undef:l},level:{number:s,undef:l},mass:{number:s},physics:{"boolean":n},scaling:{min:{number:s},max:{number:s},label:{enabled:{"boolean":n},min:{number:s},max:{number:s},maxVisible:{number:s},drawThreshold:{number:s},__type__:{object:a,"boolean":n}},customScalingFunction:{fn:d},__type__:{object:a}},shadow:{enabled:{"boolean":n},size:{number:s},x:{number:s},y:{number:s},__type__:{object:a,"boolean":n}},shape:{string:["ellipse","circle","database","box","text","image","circularImage","diamond","dot","star","triangle","triangleDown","square","icon"]},size:{number:s},title:{string:o,undef:l},value:{number:s,undef:l},x:{number:s},y:{number:s},__type__:{object:a}},physics:{barnesHut:{gravitationalConstant:{number:s},centralGravity:{number:s},springLength:{number:s},springConstant:{number:s},damping:{number:s},avoidOverlap:{number:s},__type__:{object:a}},forceAtlas2Based:{gravitationalConstant:{number:s},centralGravity:{number:s},springLength:{number:s},springConstant:{number:s},damping:{number:s},avoidOverlap:{number:s},__type__:{object:a}},repulsion:{centralGravity:{number:s},springLength:{number:s},springConstant:{number:s},nodeDistance:{number:s},damping:{number:s},__type__:{object:a}},hierarchicalRepulsion:{centralGravity:{number:s},springLength:{number:s},springConstant:{number:s},nodeDistance:{number:s},damping:{number:s},__type__:{object:a}},maxVelocity:{number:s},minVelocity:{number:s},solver:{string:["barnesHut","repulsion","hierarchicalRepulsion","forceAtlas2Based"]},stabilization:{enabled:{"boolean":n},iterations:{number:s},updateInterval:{number:s},onlyDynamicEdges:{"boolean":n},fit:{"boolean":n},__type__:{object:a,"boolean":n}},timestep:{number:s},__type__:{object:a,"boolean":n}},autoResize:{"boolean":n},clickToUse:{"boolean":n},locale:{string:o},locales:{__any__:{object:a},__type__:{object:a}},height:{string:o},width:{string:o},__type__:{object:a}};u.groups.__any__=u.nodes,u.manipulation.controlNodeStyle=u.nodes;var c={nodes:{borderWidth:[1,0,10,1],borderWidthSelected:[2,0,10,1],color:{border:["color","#2B7CE9"],background:["color","#97C2FC"],highlight:{border:["color","#2B7CE9"],background:["color","#D2E5FF"]},hover:{border:["color","#2B7CE9"],background:["color","#D2E5FF"]}},fixed:{x:!1,y:!1},font:{color:["color","#343434"],size:[14,0,100,1],face:["arial","verdana","tahoma"],background:["color","none"],strokeWidth:[0,0,50,1],strokeColor:["color","#ffffff"]},hidden:!1,physics:!0,scaling:{min:[10,0,200,1],max:[30,0,200,1],label:{enabled:!1,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},shadow:{enabled:!1,size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},shape:["ellipse","box","circle","database","diamond","dot","square","star","text","triangle","triangleDown"],size:[25,0,200,1]},edges:{arrows:{to:{enabled:!1,scaleFactor:[1,0,3,.05]},middle:{enabled:!1,scaleFactor:[1,0,3,.05]},from:{enabled:!1,scaleFactor:[1,0,3,.05]}},color:{color:["color","#848484"],highlight:["color","#848484"],hover:["color","#848484"],inherit:["from","to","both",!0,!1],opacity:[1,0,1,.05]},dashes:!1,font:{color:["color","#343434"],size:[14,0,100,1],face:["arial","verdana","tahoma"],background:["color","none"],strokeWidth:[2,0,50,1],strokeColor:["color","#ffffff"],align:["horizontal","top","middle","bottom"]},hidden:!1,hoverWidth:[1.5,0,5,.1],physics:!0,scaling:{min:[1,0,100,1],max:[15,0,100,1],label:{enabled:!0,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},selectionWidth:[1.5,0,5,.1],selfReferenceSize:[20,0,200,1],shadow:{enabled:!1,size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},smooth:{enabled:!0,type:["dynamic","continuous","discrete","diagonalCross","straightCross","horizontal","vertical","curvedCW","curvedCCW"],roundness:[.5,0,1,.05]},width:[1,0,30,1]},layout:{hierarchical:{enabled:!1,levelSeparation:[150,20,500,5],direction:["UD","DU","LR","RL"],sortMethod:["hubsize","directed"]}},interaction:{dragNodes:!0,dragView:!0,hideEdgesOnDrag:!1,hideNodesOnDrag:!1,hover:!1,keyboard:{enabled:!1,speed:{x:[10,0,40,1],y:[10,0,40,1],zoom:[.02,0,.1,.005]},bindToWindow:!0},multiselect:!1,navigationButtons:!1,selectable:!0,selectConnectedEdges:!0,hoverConnectedEdges:!0,tooltipDelay:[300,0,1e3,25],zoomView:!0},manipulation:{enabled:!1,initiallyActive:!1},physics:{barnesHut:{gravitationalConstant:[-2e3,-3e4,0,50],centralGravity:[.3,0,10,.05],springLength:[95,0,500,5],springConstant:[.04,0,1.2,.005],damping:[.09,0,1,.01],avoidOverlap:[0,0,1,.01]},forceAtlas2Based:{gravitationalConstant:[-50,-500,0,1],centralGravity:[.01,0,1,.005],springLength:[95,0,500,5],springConstant:[.08,0,1.2,.005],damping:[.4,0,1,.01],avoidOverlap:[0,0,1,.01]},repulsion:{centralGravity:[.2,0,10,.05],springLength:[200,0,500,5],springConstant:[.05,0,1.2,.005],nodeDistance:[100,0,500,5],damping:[.09,0,1,.01]},hierarchicalRepulsion:{centralGravity:[.2,0,10,.05],springLength:[100,0,500,5],springConstant:[.01,0,1.2,.005],nodeDistance:[120,0,500,5],damping:[.09,0,1,.01]},maxVelocity:[50,0,150,1],minVelocity:[.1,.01,.5,.01],solver:["barnesHut","forceAtlas2Based","repulsion","hierarchicalRepulsion"],timestep:[.5,.01,1,.01]},global:{locale:["en","nl"]}};e.allOptions=u,e.configureOptions=c},function(t,e,i){"undefined"!=typeof CanvasRenderingContext2D&&(CanvasRenderingContext2D.prototype.circle=function(t,e,i){this.beginPath(),this.arc(t,e,i,0,2*Math.PI,!1),this.closePath()},CanvasRenderingContext2D.prototype.square=function(t,e,i){this.beginPath(),this.rect(t-i,e-i,2*i,2*i),this.closePath()},CanvasRenderingContext2D.prototype.triangle=function(t,e,i){this.beginPath(),i*=1.15,e+=.275*i;var o=2*i,n=o/2,s=Math.sqrt(3)/6*o,r=Math.sqrt(o*o-n*n);this.moveTo(t,e-(r-s)),this.lineTo(t+n,e+s),this.lineTo(t-n,e+s),this.lineTo(t,e-(r-s)),this.closePath()},CanvasRenderingContext2D.prototype.triangleDown=function(t,e,i){this.beginPath(),i*=1.15,e-=.275*i;var o=2*i,n=o/2,s=Math.sqrt(3)/6*o,r=Math.sqrt(o*o-n*n);this.moveTo(t,e+(r-s)),this.lineTo(t+n,e-s),this.lineTo(t-n,e-s),this.lineTo(t,e+(r-s)),this.closePath()},CanvasRenderingContext2D.prototype.star=function(t,e,i){this.beginPath(),i*=.82,e+=.1*i;for(var o=0;10>o;o++){var n=o%2===0?1.3*i:.5*i;this.lineTo(t+n*Math.sin(2*o*Math.PI/10),e-n*Math.cos(2*o*Math.PI/10))}this.closePath()},CanvasRenderingContext2D.prototype.diamond=function(t,e,i){this.beginPath(),this.lineTo(t,e+i),this.lineTo(t+i,e),this.lineTo(t,e-i),this.lineTo(t-i,e),this.closePath()},CanvasRenderingContext2D.prototype.roundRect=function(t,e,i,o,n){var s=Math.PI/180;0>i-2*n&&(n=i/2),0>o-2*n&&(n=o/2),this.beginPath(),this.moveTo(t+n,e),this.lineTo(t+i-n,e),this.arc(t+i-n,e+n,n,270*s,360*s,!1),this.lineTo(t+i,e+o-n),this.arc(t+i-n,e+o-n,n,0,90*s,!1),this.lineTo(t+n,e+o),this.arc(t+n,e+o-n,n,90*s,180*s,!1),this.lineTo(t,e+n),this.arc(t+n,e+n,n,180*s,270*s,!1),this.closePath()},CanvasRenderingContext2D.prototype.ellipse=function(t,e,i,o){var n=.5522848,s=i/2*n,r=o/2*n,a=t+i,h=e+o,d=t+i/2,l=e+o/2;this.beginPath(),this.moveTo(t,l),this.bezierCurveTo(t,l-r,d-s,e,d,e),this.bezierCurveTo(d+s,e,a,l-r,a,l),this.bezierCurveTo(a,l+r,d+s,h,d,h),this.bezierCurveTo(d-s,h,t,l+r,t,l),this.closePath()},CanvasRenderingContext2D.prototype.database=function(t,e,i,o){var n=1/3,s=i,r=o*n,a=.5522848,h=s/2*a,d=r/2*a,l=t+s,u=e+r,c=t+s/2,p=e+r/2,f=e+(o-r/2),m=e+o;this.beginPath(),this.moveTo(l,p),this.bezierCurveTo(l,p+d,c+h,u,c,u),this.bezierCurveTo(c-h,u,t,p+d,t,p),this.bezierCurveTo(t,p-d,c-h,e,c,e),this.bezierCurveTo(c+h,e,l,p-d,l,p),this.lineTo(l,f),this.bezierCurveTo(l,f+d,c+h,m,c,m),this.bezierCurveTo(c-h,m,t,f+d,t,f),this.lineTo(t,p)},CanvasRenderingContext2D.prototype.arrow=function(t,e,i,o){var n=t-o*Math.cos(i),s=e-o*Math.sin(i),r=t-.9*o*Math.cos(i),a=e-.9*o*Math.sin(i),h=n+o/3*Math.cos(i+.5*Math.PI),d=s+o/3*Math.sin(i+.5*Math.PI),l=n+o/3*Math.cos(i-.5*Math.PI),u=s+o/3*Math.sin(i-.5*Math.PI);this.beginPath(),this.moveTo(t,e),this.lineTo(h,d),this.lineTo(r,a),this.lineTo(l,u),this.closePath()},CanvasRenderingContext2D.prototype.dashedLine=function(t,e,i,o,n){this.beginPath(),this.moveTo(t,e);for(var s=n.length,r=i-t,a=o-e,h=a/r,d=Math.sqrt(r*r+a*a),l=0,u=!0,c=0,p=n[0];d>=.1;)p=n[l++%s],p>d&&(p=d),c=Math.sqrt(p*p/(1+h*h)),c=0>r?-c:c,t+=c,e+=h*c,u===!0?this.lineTo(t,e):this.moveTo(t,e),d-=p,u=!u})},function(t,e,i){function o(t){return I=t,f()}function n(){N=0,z=I.charAt(0)}function s(){N++,z=I.charAt(N)}function r(){return I.charAt(N+1)}function a(t){return B.test(t)}function h(t,e){if(t||(t={}),e)for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i]);return t}function d(t,e,i){for(var o=e.split("."),n=t;o.length;){var s=o.shift();o.length?(n[s]||(n[s]={}),n=n[s]):n[s]=i}}function l(t,e){for(var i,o,n=null,s=[t],r=t;r.parent;)s.push(r.parent),r=r.parent;if(r.nodes)for(i=0,o=r.nodes.length;o>i;i++)if(e.id===r.nodes[i].id){n=r.nodes[i];break}for(n||(n={id:e.id},t.node&&(n.attr=h(n.attr,t.node))),i=s.length-1;i>=0;i--){var a=s[i];a.nodes||(a.nodes=[]),-1===a.nodes.indexOf(n)&&a.nodes.push(n)}e.attr&&(n.attr=h(n.attr,e.attr))}function u(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 c(t,e,i,o,n){var s={from:e,to:i,type:o};return t.edge&&(s.attr=h({},t.edge)),s.attr=h(s.attr||{},n),s}function p(){for(L=S.NULL,A="";" "===z||" "===z||"\n"===z||"\r"===z;)s();do{var t=!1;if("#"===z){for(var e=N-1;" "===I.charAt(e)||" "===I.charAt(e);)e--;if("\n"===I.charAt(e)||""===I.charAt(e)){for(;""!=z&&"\n"!=z;)s();t=!0}}if("/"===z&&"/"===r()){for(;""!=z&&"\n"!=z;)s();t=!0}if("/"===z&&"*"===r()){for(;""!=z;){if("*"===z&&"/"===r()){s(),s();break}s()}t=!0}for(;" "===z||" "===z||"\n"===z||"\r"===z;)s()}while(t);if(""===z)return void(L=S.DELIMITER);var i=z+r();if(P[i])return L=S.DELIMITER,A=i,s(),void s();if(P[z])return L=S.DELIMITER,A=z,void s();if(a(z)||"-"===z){for(A+=z,s();a(z);)A+=z,s();return"false"===A?A=!1:"true"===A?A=!0:isNaN(Number(A))||(A=Number(A)),void(L=S.IDENTIFIER)}if('"'===z){for(s();""!=z&&('"'!=z||'"'===z&&'"'===r());)A+=z,'"'===z&&s(),s();if('"'!=z)throw x('End of string " expected');return s(),void(L=S.IDENTIFIER)}for(L=S.UNKNOWN;""!=z;)A+=z,s();throw new SyntaxError('Syntax error in part "'+k(A,30)+'"')}function f(){var t={};if(n(),p(),"strict"===A&&(t.strict=!0,p()),("graph"===A||"digraph"===A)&&(t.type=A,p()),L===S.IDENTIFIER&&(t.id=A,p()),"{"!=A)throw x("Angle bracket { expected");if(p(),m(t),"}"!=A)throw x("Angle bracket } expected");if(p(),""!==A)throw x("End of file expected");return p(),delete t.node,delete t.edge,delete t.graph,t}function m(t){for(;""!==A&&"}"!=A;)v(t),";"===A&&p()}function v(t){var e=g(t);if(e)return void w(t,e);var i=y(t);if(!i){if(L!=S.IDENTIFIER)throw x("Identifier expected");var o=A;if(p(),"="===A){if(p(),L!=S.IDENTIFIER)throw x("Identifier expected");t[o]=A,p()}else b(t,o)}}function g(t){var e=null;if("subgraph"===A&&(e={},e.type="subgraph",p(),L===S.IDENTIFIER&&(e.id=A,p())),"{"===A){if(p(),e||(e={}),e.parent=t,e.node=t.node,e.edge=t.edge,e.graph=t.graph,m(e),"}"!=A)throw x("Angle bracket } expected");p(),delete e.node,delete e.edge,delete e.graph,delete e.parent,t.subgraphs||(t.subgraphs=[]),t.subgraphs.push(e)}return e}function y(t){return"node"===A?(p(),t.node=_(),"node"):"edge"===A?(p(),t.edge=_(),"edge"):"graph"===A?(p(),t.graph=_(),"graph"):null}function b(t,e){var i={id:e},o=_();o&&(i.attr=o),l(t,i),w(t,e)}function w(t,e){for(;"->"===A||"--"===A;){var i,o=A;p();var n=g(t);if(n)i=n;else{if(L!=S.IDENTIFIER)throw x("Identifier or subgraph expected");i=A,l(t,{id:i}),p()}var s=_(),r=c(t,e,i,o,s);u(t,r),e=i}}function _(){for(var t=null;"["===A;){for(p(),t={};""!==A&&"]"!=A;){if(L!=S.IDENTIFIER)throw x("Attribute name expected");var e=A;if(p(),"="!=A)throw x("Equal sign = expected");if(p(),L!=S.IDENTIFIER)throw x("Attribute value expected");var i=A;d(t,e,i),p(),","==A&&p()}if("]"!=A)throw x("Bracket ] expected");p()}return t}function x(t){return new SyntaxError(t+', got "'+k(A,30)+'" (char '+N+")")}function k(t,e){return t.length<=e?t:t.substr(0,27)+"..."}function M(t,e,i){Array.isArray(t)?t.forEach(function(t){Array.isArray(e)?e.forEach(function(e){i(t,e)}):i(t,e)}):Array.isArray(e)?e.forEach(function(e){i(t,e)}):i(t,e)}function O(t,e,i){for(var o=e.split("."),n=o.pop(),s=t,r=0;r":!0,"--":!0},I="",N=0,z="",A="",L=S.NULL,B=/[a-zA-Z_0-9.:#]/;e.parseDOT=o,e.DOTToGraph=T},function(t,e,i){function o(t,e){var i=[],o=[],n={edges:{inheritColor:!1},nodes:{fixed:!1,parseColor:!1}};void 0!==e&&(void 0!==e.fixed&&(n.nodes.fixed=e.fixed),void 0!==e.parseColor&&(n.nodes.parseColor=e.parseColor),void 0!==e.inheritColor&&(n.edges.inheritColor=e.inheritColor));for(var s=t.edges,r=t.nodes,a=0;at.start-e&&this.data.start0){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;i0?o._handlers[t]=i:(o._off(t,r),delete o._handlers[t]))}),o},o.emit=function(i,n){e||(t=n.target),o._emit(i,n)},o.destroy=function(){var t=o.element;delete t.hammer,o._handlers={},o._destroy()},o}})},function(t,e,i){var o;!function(n,s,r,a){function h(t,e,i){return setTimeout(f(t,i),e)}function d(t,e,i){return Array.isArray(t)?(l(t,i[e],i),!0):!1}function l(t,e,i){var o;if(t)if(t.forEach)t.forEach(e,i);else if(t.length!==a)for(o=0;o-1}function _(t){return t.trim().split(/\s+/g)}function x(t,e,i){if(t.indexOf&&!i)return t.indexOf(e);for(var o=0;oi[e]}):o.sort()),o}function O(t,e){for(var i,o,n=e[0].toUpperCase()+e.slice(1),s=0;s1&&!i.firstMultiple?i.firstMultiple=z(e):1===n&&(i.firstMultiple=!1);var s=i.firstInput,r=i.firstMultiple,a=r?r.center:s.center,h=e.center=A(o);e.timeStamp=gt(),e.deltaTime=e.timeStamp-s.timeStamp,e.angle=F(a,h),e.distance=R(a,h),I(i,e),e.offsetDirection=B(e.deltaX,e.deltaY),e.scale=r?H(r.pointers,o):1,e.rotation=r?j(r.pointers,o):0,N(i,e);var d=t.element;b(e.srcEvent.target,d)&&(d=e.srcEvent.target),e.target=d}function I(t,e){var i=e.center,o=t.offsetDelta||{},n=t.prevDelta||{},s=t.prevInput||{};(e.eventType===Ct||s.eventType===St)&&(n=t.prevDelta={x:s.deltaX||0,y:s.deltaY||0},o=t.offsetDelta={x:i.x,y:i.y}),e.deltaX=n.x+(i.x-o.x),e.deltaY=n.y+(i.y-o.y)}function N(t,e){var i,o,n,s,r=t.lastInterval||e,h=e.timeStamp-r.timeStamp;if(e.eventType!=Pt&&(h>Tt||r.velocity===a)){var d=r.deltaX-e.deltaX,l=r.deltaY-e.deltaY,u=L(h,d,l);o=u.x,n=u.y,i=vt(u.x)>vt(u.y)?u.x:u.y,s=B(d,l),t.lastInterval=e}else i=r.velocity,o=r.velocityX,n=r.velocityY,s=r.direction;e.velocity=i,e.velocityX=o,e.velocityY=n,e.direction=s}function z(t){for(var e=[],i=0;in;)i+=t[n].clientX,o+=t[n].clientY,n++;return{x:mt(i/e),y:mt(o/e)}}function L(t,e,i){return{x:e/t||0,y:i/t||0}}function B(t,e){return t===e?It:vt(t)>=vt(e)?t>0?Nt:zt:e>0?At:Lt}function R(t,e,i){i||(i=jt);var o=e[i[0]]-t[i[0]],n=e[i[1]]-t[i[1]];return Math.sqrt(o*o+n*n)}function F(t,e,i){i||(i=jt);var o=e[i[0]]-t[i[0]],n=e[i[1]]-t[i[1]];return 180*Math.atan2(n,o)/Math.PI}function j(t,e){return F(e[1],e[0],Ht)-F(t[1],t[0],Ht)}function H(t,e){return R(e[0],e[1],Ht)/R(t[0],t[1],Ht)}function Y(){this.evEl=Wt,this.evWin=Gt,this.allow=!0,this.pressed=!1,C.apply(this,arguments)}function W(){this.evEl=qt,this.evWin=Xt,C.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}function G(){this.evTarget=Kt,this.evWin=Jt,this.started=!1,C.apply(this,arguments)}function U(t,e){var i=k(t.touches),o=k(t.changedTouches);return e&(St|Pt)&&(i=M(i.concat(o),"identifier",!0)),[i,o]}function V(){this.evTarget=$t,this.targetIds={},C.apply(this,arguments)}function q(t,e){var i=k(t.touches),o=this.targetIds;if(e&(Ct|Et)&&1===i.length)return o[i[0].identifier]=!0,[i,i];var n,s,r=k(t.changedTouches),a=[],h=this.target;if(s=i.filter(function(t){return b(t.target,h)}),e===Ct)for(n=0;na&&(e.push(t),a=e.length-1):n&(St|Pt)&&(i=!0),0>a||(e[a]=t,this.callback(this.manager,n,{pointers:e,changedPointers:[t],pointerType:s,srcEvent:t}),i&&e.splice(a,1))}});var Zt={touchstart:Ct,touchmove:Et,touchend:St,touchcancel:Pt},Kt="touchstart",Jt="touchstart touchmove touchend touchcancel";p(G,C,{handler:function(t){var e=Zt[t.type];if(e===Ct&&(this.started=!0),this.started){var i=U.call(this,t,e);e&(St|Pt)&&i[0].length-i[1].length===0&&(this.started=!1),this.callback(this.manager,e,{pointers:i[0],changedPointers:i[1],pointerType:kt,srcEvent:t})}}});var Qt={touchstart:Ct,touchmove:Et,touchend:St,touchcancel:Pt},$t="touchstart touchmove touchend touchcancel";p(V,C,{handler:function(t){var e=Qt[t.type],i=q.call(this,t,e);i&&this.callback(this.manager,e,{pointers:i[0],changedPointers:i[1],pointerType:kt,srcEvent:t})}}),p(X,C,{handler:function(t,e,i){var o=i.pointerType==kt,n=i.pointerType==Ot;if(o)this.mouse.allow=!1;else if(n&&!this.mouse.allow)return;e&(St|Pt)&&(this.mouse.allow=!0),this.callback(t,e,i)},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var te=O(pt.style,"touchAction"),ee=te!==a,ie="compute",oe="auto",ne="manipulation",se="none",re="pan-x",ae="pan-y";Z.prototype={set:function(t){t==ie&&(t=this.compute()),ee&&(this.manager.element.style[te]=t),this.actions=t.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var t=[];return l(this.manager.recognizers,function(e){m(e.options.enable,[e])&&(t=t.concat(e.getTouchAction()))}),K(t.join(" "))},preventDefaults:function(t){if(!ee){var e=t.srcEvent,i=t.offsetDirection;if(this.manager.session.prevented)return void e.preventDefault();var o=this.actions,n=w(o,se),s=w(o,ae),r=w(o,re);return n||s&&i&Bt||r&&i&Rt?this.preventSrc(e):void 0}},preventSrc:function(t){this.manager.session.prevented=!0,t.preventDefault()}};var he=1,de=2,le=4,ue=8,ce=ue,pe=16,fe=32;J.prototype={defaults:{},set:function(t){return u(this.options,t),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(t){if(d(t,"recognizeWith",this))return this;var e=this.simultaneous;return t=tt(t,this),e[t.id]||(e[t.id]=t,t.recognizeWith(this)),this},dropRecognizeWith:function(t){return d(t,"dropRecognizeWith",this)?this:(t=tt(t,this),delete this.simultaneous[t.id],this)},requireFailure:function(t){if(d(t,"requireFailure",this))return this;var e=this.requireFail;return t=tt(t,this),-1===x(e,t)&&(e.push(t),t.requireFailure(this)),this},dropRequireFailure:function(t){if(d(t,"dropRequireFailure",this))return this;t=tt(t,this);var e=x(this.requireFail,t);return e>-1&&this.requireFail.splice(e,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(t){return!!this.simultaneous[t.id]},emit:function(t){function e(e){i.manager.emit(i.options.event+(e?Q(o):""),t)}var i=this,o=this.state;ue>o&&e(!0),e(),o>=ue&&e(!0)},tryEmit:function(t){return this.canEmit()?this.emit(t):void(this.state=fe)},canEmit:function(){for(var t=0;ts?Nt:zt,i=s!=this.pX,o=Math.abs(t.deltaX)):(n=0===r?It:0>r?At:Lt,i=r!=this.pY,o=Math.abs(t.deltaY))),t.direction=n,i&&o>e.threshold&&n&e.direction},attrTest:function(t){return et.prototype.attrTest.call(this,t)&&(this.state&de||!(this.state&de)&&this.directionTest(t))},emit:function(t){this.pX=t.deltaX,this.pY=t.deltaY;var e=$(t.direction);e&&this.manager.emit(this.options.event+e,t),this._super.emit.call(this,t)}}),p(ot,et,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[se]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.scale-1)>this.options.threshold||this.state&de)},emit:function(t){if(this._super.emit.call(this,t),1!==t.scale){var e=t.scale<1?"in":"out";this.manager.emit(this.options.event+e,t)}}}),p(nt,J,{defaults:{event:"press",pointers:1,time:500,threshold:5},getTouchAction:function(){return[oe]},process:function(t){var e=this.options,i=t.pointers.length===e.pointers,o=t.distancee.time;if(this._input=t,!o||!i||t.eventType&(St|Pt)&&!n)this.reset();else if(t.eventType&Ct)this.reset(),this._timer=h(function(){this.state=ce,this.tryEmit()},e.time,this);else if(t.eventType&St)return ce;return fe},reset:function(){clearTimeout(this._timer)},emit:function(t){this.state===ce&&(t&&t.eventType&St?this.manager.emit(this.options.event+"up",t):(this._input.timeStamp=gt(),this.manager.emit(this.options.event,this._input)))}}),p(st,et,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[se]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.rotation)>this.options.threshold||this.state&de)}}),p(rt,et,{defaults:{event:"swipe",threshold:10,velocity:.65,direction:Bt|Rt,pointers:1},getTouchAction:function(){return it.prototype.getTouchAction.call(this)},attrTest:function(t){var e,i=this.options.direction;return i&(Bt|Rt)?e=t.velocity:i&Bt?e=t.velocityX:i&Rt&&(e=t.velocityY),this._super.attrTest.call(this,t)&&i&t.direction&&t.distance>this.options.threshold&&vt(e)>this.options.velocity&&t.eventType&St},emit:function(t){var e=$(t.direction);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)}}),p(at,J,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:2,posThreshold:10},getTouchAction:function(){return[ne]},process:function(t){var e=this.options,i=t.pointers.length===e.pointers,o=t.distancei;i++)if(t[i]!=e[i])return!1;return!0},e.convert=function(t,i){var n;if(void 0===t)return void 0;if(null===t)return null;if(!i)return t;if("string"!=typeof i&&!(i instanceof String))throw new Error("Type must be a string");switch(i){case"boolean":case"Boolean":return Boolean(t);case"number":case"Number":return Number(t.valueOf());case"string":case"String":return String(t);case"Date":if(e.isNumber(t))return new Date(t);if(t instanceof Date)return new Date(t.valueOf());if(o.isMoment(t))return new Date(t.valueOf());if(e.isString(t))return n=s.exec(t),n?new Date(Number(n[1])):o(t).toDate();throw new Error("Cannot convert object of type "+e.getType(t)+" to type Date");case"Moment":if(e.isNumber(t))return o(t);if(t instanceof Date)return o(t.valueOf());if(o.isMoment(t))return o(t);if(e.isString(t))return n=s.exec(t),o(n?Number(n[1]):t);throw new Error("Cannot convert object of type "+e.getType(t)+" to type Date");case"ISODate":if(e.isNumber(t))return new Date(t);if(t instanceof Date)return t.toISOString();if(o.isMoment(t))return t.toDate().toISOString();if(e.isString(t))return n=s.exec(t),n?new Date(Number(n[1])).toISOString():new Date(t).toISOString();throw new Error("Cannot convert object of type "+e.getType(t)+" to type ISODate");case"ASPDate":if(e.isNumber(t))return"/Date("+t+")/";if(t instanceof Date)return"/Date("+t.valueOf()+")/";if(e.isString(t)){n=s.exec(t);var r;return r=n?new Date(Number(n[1])).valueOf():new Date(t).valueOf(),"/Date("+r+")/"}throw new Error("Cannot convert object of type "+e.getType(t)+" to type ASPDate");default:throw new Error('Unknown type "'+i+'"'); +}};var s=/^\/?Date\((\-?\d+)/i;e.getType=function(t){var e=typeof t;return"object"==e?null===t?"null":t instanceof Boolean?"Boolean":t instanceof Number?"Number":t instanceof String?"String":Array.isArray(t)?"Array":t instanceof Date?"Date":"Object":"number"==e?"Number":"boolean"==e?"Boolean":"string"==e?"String":void 0===e?"undefined":e},e.copyAndExtendArray=function(t,e){for(var i=[],o=0;oi;i++)e(t[i],i,t);else for(i in t)t.hasOwnProperty(i)&&e(t[i],i,t)},e.toArray=function(t){var e=[];for(var i in t)t.hasOwnProperty(i)&&e.push(t[i]);return e},e.updateProperty=function(t,e,i){return t[e]!==i?(t[e]=i,!0):!1},e.addEventListener=function(t,e,i,o){t.addEventListener?(void 0===o&&(o=!1),"mousewheel"===e&&navigator.userAgent.indexOf("Firefox")>=0&&(e="DOMMouseScroll"),t.addEventListener(e,i,o)):t.attachEvent("on"+e,i)},e.removeEventListener=function(t,e,i,o){t.removeEventListener?(void 0===o&&(o=!1),"mousewheel"===e&&navigator.userAgent.indexOf("Firefox")>=0&&(e="DOMMouseScroll"),t.removeEventListener(e,i,o)):t.detachEvent("on"+e,i)},e.preventDefault=function(t){t||(t=window.event),t.preventDefault?t.preventDefault():t.returnValue=!1},e.getTarget=function(t){t||(t=window.event);var e;return t.target?e=t.target:t.srcElement&&(e=t.srcElement),void 0!=e.nodeType&&3==e.nodeType&&(e=e.parentNode),e},e.hasParent=function(t,e){for(var i=t;i;){if(i===e)return!0;i=i.parentNode}return!1},e.option={},e.option.asBoolean=function(t,e){return"function"==typeof t&&(t=t()),null!=t?0!=t:e||null},e.option.asNumber=function(t,e){return"function"==typeof t&&(t=t()),null!=t?Number(t)||e||null:e||null},e.option.asString=function(t,e){return"function"==typeof t&&(t=t()),null!=t?String(t):e||null},e.option.asSize=function(t,i){return"function"==typeof t&&(t=t()),e.isString(t)?t:e.isNumber(t)?t+"px":i||null},e.option.asElement=function(t,e){return"function"==typeof t&&(t=t()),t||e||null},e.hexToRGB=function(t){var e=/^#?([a-f\d])([a-f\d])([a-f\d])$/i;t=t.replace(e,function(t,e,i,o){return e+e+i+i+o+o});var i=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(t);return i?{r:parseInt(i[1],16),g:parseInt(i[2],16),b:parseInt(i[3],16)}:null},e.overrideOpacity=function(t,i){if(-1!=t.indexOf("rgba"))return t;if(-1!=t.indexOf("rgb")){var o=t.substr(t.indexOf("(")+1).replace(")","").split(",");return"rgba("+o[0]+","+o[1]+","+o[2]+","+i+")"}var o=e.hexToRGB(t);return null==o?t:"rgba("+o.r+","+o.g+","+o.b+","+i+")"},e.RGBToHex=function(t,e,i){return"#"+((1<<24)+(t<<16)+(e<<8)+i).toString(16).slice(1)},e.parseColor=function(t){var i;if(e.isString(t)===!0){if(e.isValidRGB(t)===!0){var o=t.substr(4).substr(0,t.length-5).split(",").map(function(t){return parseInt(t)});t=e.RGBToHex(o[0],o[1],o[2])}if(e.isValidHex(t)===!0){var n=e.hexToHSV(t),s={h:n.h,s:.8*n.s,v:Math.min(1,1.02*n.v)},r={h:n.h,s:Math.min(1,1.25*n.s),v:.8*n.v},a=e.HSVToHex(r.h,r.s,r.v),h=e.HSVToHex(s.h,s.s,s.v);i={background:t,border:a,highlight:{background:h,border:a},hover:{background:h,border:a}}}else i={background:t,border:t,highlight:{background:t,border:t},hover:{background:t,border:t}}}else i={},i.background=t.background||void 0,i.border=t.border||void 0,e.isString(t.highlight)?i.highlight={border:t.highlight,background:t.highlight}:(i.highlight={},i.highlight.background=t.highlight&&t.highlight.background||void 0,i.highlight.border=t.highlight&&t.highlight.border||void 0),e.isString(t.hover)?i.hover={border:t.hover,background:t.hover}:(i.hover={},i.hover.background=t.hover&&t.hover.background||void 0,i.hover.border=t.hover&&t.hover.border||void 0);return i},e.RGBToHSV=function(t,e,i){t/=255,e/=255,i/=255;var o=Math.min(t,Math.min(e,i)),n=Math.max(t,Math.max(e,i));if(o==n)return{h:0,s:0,v:o};var s=t==o?e-i:i==o?t-e:i-t,r=t==o?3:i==o?1:5,a=60*(r-s/(n-o))/360,h=(n-o)/n,d=n;return{h:a,s:h,v:d}};var r={split:function(t){var e={};return t.split(";").forEach(function(t){if(""!=t.trim()){var i=t.split(":"),o=i[0].trim(),n=i[1].trim();e[o]=n}}),e},join:function(t){return Object.keys(t).map(function(e){return e+": "+t[e]}).join("; ")}};e.addCssText=function(t,i){var o=r.split(t.style.cssText),n=r.split(i),s=e.extend(o,n);t.style.cssText=r.join(s)},e.removeCssText=function(t,e){var i=r.split(t.style.cssText),o=r.split(e);for(var n in o)o.hasOwnProperty(n)&&delete i[n];t.style.cssText=r.join(i)},e.HSVToRGB=function(t,e,i){var o,n,s,r=Math.floor(6*t),a=6*t-r,h=i*(1-e),d=i*(1-a*e),l=i*(1-(1-a)*e);switch(r%6){case 0:o=i,n=l,s=h;break;case 1:o=d,n=i,s=h;break;case 2:o=h,n=i,s=l;break;case 3:o=h,n=d,s=i;break;case 4:o=l,n=h,s=i;break;case 5:o=i,n=h,s=d}return{r:Math.floor(255*o),g:Math.floor(255*n),b:Math.floor(255*s)}},e.HSVToHex=function(t,i,o){var n=e.HSVToRGB(t,i,o);return e.RGBToHex(n.r,n.g,n.b)},e.hexToHSV=function(t){var i=e.hexToRGB(t);return e.RGBToHSV(i.r,i.g,i.b)},e.isValidHex=function(t){var e=/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(t);return e},e.isValidRGB=function(t){t=t.replace(" ","");var e=/rgb\((\d{1,3}),(\d{1,3}),(\d{1,3})\)/i.test(t);return e},e.isValidRGBA=function(t){t=t.replace(" ","");var e=/rgba\((\d{1,3}),(\d{1,3}),(\d{1,3}),(.{1,3})\)/i.test(t);return e},e.selectiveBridgeObject=function(t,i){if("object"==typeof i){for(var o=Object.create(i),n=0;n=r&&n>s;){var h=Math.floor((r+a)/2),d=t[h],l=void 0===o?d[i]:d[i][o],u=e(l);if(0==u)return h;-1==u?r=h+1:a=h-1,s++}return-1},e.binarySearchValue=function(t,e,i,o){for(var n,s,r,a,h=1e4,d=0,l=0,u=t.length-1;u>=l&&h>d;){if(a=Math.floor(.5*(u+l)),n=t[Math.max(0,a-1)][i],s=t[a][i],r=t[Math.min(t.length-1,a+1)][i],s==e)return a;if(e>n&&s>e)return"before"==o?Math.max(0,a-1):a;if(e>s&&r>e)return"before"==o?a:Math.min(t.length-1,a+1);e>s?l=a+1:u=a-1,d++}return-1},e.easingFunctions={linear:function(t){return t},easeInQuad:function(t){return t*t},easeOutQuad:function(t){return t*(2-t)},easeInOutQuad:function(t){return.5>t?2*t*t:-1+(4-2*t)*t},easeInCubic:function(t){return t*t*t},easeOutCubic:function(t){return--t*t*t+1},easeInOutCubic:function(t){return.5>t?4*t*t*t:(t-1)*(2*t-2)*(2*t-2)+1},easeInQuart:function(t){return t*t*t*t},easeOutQuart:function(t){return 1- --t*t*t*t},easeInOutQuart:function(t){return.5>t?8*t*t*t*t:1-8*--t*t*t*t},easeInQuint:function(t){return t*t*t*t*t},easeOutQuint:function(t){return 1+--t*t*t*t*t},easeInOutQuint:function(t){return.5>t?16*t*t*t*t*t:1+16*--t*t*t*t*t}}},function(t,e,i){t.exports="undefined"!=typeof window&&window.moment||i(9)},function(t,e,i){(function(t){!function(e,i){t.exports=i()}(this,function(){function e(){return Si.apply(null,arguments)}function i(t){Si=t}function o(t){return"[object Array]"===Object.prototype.toString.call(t)}function n(t){return t instanceof Date||"[object Date]"===Object.prototype.toString.call(t)}function s(t,e){var i,o=[];for(i=0;i0)for(i in Ii)o=Ii[i],n=e[o],"undefined"!=typeof n&&(t[o]=n);return t}function f(t){p(this,t),this._d=new Date(+t._d),Ni===!1&&(Ni=!0,e.updateOffset(this),Ni=!1)}function m(t){return t instanceof f||null!=t&&null!=t._isAMomentObject}function v(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 o,n=Math.min(t.length,e.length),s=Math.abs(t.length-e.length),r=0;for(o=0;n>o;o++)(i&&t[o]!==e[o]||!i&&v(t[o])!==v(e[o]))&&r++;return r+s}function y(){}function b(t){return t?t.toLowerCase().replace("_","-"):t}function w(t){for(var e,i,o,n,s=0;s0;){if(o=_(n.slice(0,e).join("-")))return o;if(i&&i.length>=e&&g(n,i,!0)>=e-1)break;e--}s++}return null}function _(e){var i=null;if(!zi[e]&&"undefined"!=typeof t&&t&&t.exports)try{i=Pi._abbr,!function(){var t=new Error('Cannot find module "./locale"');throw t.code="MODULE_NOT_FOUND",t}(),x(i)}catch(o){}return zi[e]}function x(t,e){var i;return t&&(i="undefined"==typeof e?M(t):k(t,e),i&&(Pi=i)),Pi._abbr}function k(t,e){return null!==e?(e.abbr=t,zi[t]||(zi[t]=new y),zi[t].set(e),x(t),zi[t]):(delete zi[t],null)}function M(t){var e;if(t&&t._locale&&t._locale._abbr&&(t=t._locale._abbr),!t)return Pi;if(!o(t)){if(e=_(t))return e;t=[t]}return w(t)}function O(t,e){var i=t.toLowerCase();Ai[i]=Ai[i+"s"]=Ai[e]=t}function D(t){return"string"==typeof t?Ai[t]||Ai[t.toLowerCase()]:void 0}function T(t){var e,i,o={};for(i in t)r(t,i)&&(e=D(i),e&&(o[e]=t[i]));return o}function C(t,i){return function(o){return null!=o?(S(this,t,o),e.updateOffset(this,i),this):E(this,t)}}function E(t,e){return t._d["get"+(t._isUTC?"UTC":"")+e]()}function S(t,e,i){return t._d["set"+(t._isUTC?"UTC":"")+e](i)}function P(t,e){var i;if("object"==typeof t)for(i in t)this.set(i,t[i]);else if(t=D(t),"function"==typeof this[t])return this[t](e);return this}function I(t,e,i){for(var o=""+Math.abs(t),n=t>=0;o.lengthe;e++)Fi[o[e]]?o[e]=Fi[o[e]]:o[e]=z(o[e]);return function(n){var s="";for(e=0;i>e;e++)s+=o[e]instanceof Function?o[e].call(n,t):o[e];return s}}function L(t,e){return t.isValid()?(e=B(e,t.localeData()),Ri[e]||(Ri[e]=A(e)),Ri[e](t)):t.localeData().invalidDate()}function B(t,e){function i(t){return e.longDateFormat(t)||t}var o=5;for(Bi.lastIndex=0;o>=0&&Bi.test(t);)t=t.replace(Bi,i),Bi.lastIndex=0,o-=1;return t}function R(t,e,i){to[t]="function"==typeof e?e:function(t){return t&&i?i:e}}function F(t,e){return r(to,t)?to[t](e._strict,e._locale):new RegExp(j(t))}function j(t){return t.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(t,e,i,o,n){return e||i||o||n}).replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function H(t,e){var i,o=e;for("string"==typeof t&&(t=[t]),"number"==typeof e&&(o=function(t,i){i[e]=v(t)}),i=0;io;o++){if(n=h([2e3,o]),i&&!this._longMonthsParse[o]&&(this._longMonthsParse[o]=new RegExp("^"+this.months(n,"").replace(".","")+"$","i"),this._shortMonthsParse[o]=new RegExp("^"+this.monthsShort(n,"").replace(".","")+"$","i")),i||this._monthsParse[o]||(s="^"+this.months(n,"")+"|^"+this.monthsShort(n,""),this._monthsParse[o]=new RegExp(s.replace(".",""),"i")),i&&"MMMM"===e&&this._longMonthsParse[o].test(t))return o;if(i&&"MMM"===e&&this._shortMonthsParse[o].test(t))return o;if(!i&&this._monthsParse[o].test(t))return o}}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 Z(t){return null!=t?(X(this,t),e.updateOffset(this,!0),this):E(this,"Month")}function K(){return G(this.year(),this.month())}function J(t){var e,i=t._a;return i&&-2===l(t).overflow&&(e=i[oo]<0||i[oo]>11?oo:i[no]<1||i[no]>G(i[io],i[oo])?no:i[so]<0||i[so]>24||24===i[so]&&(0!==i[ro]||0!==i[ao]||0!==i[ho])?so:i[ro]<0||i[ro]>59?ro:i[ao]<0||i[ao]>59?ao:i[ho]<0||i[ho]>999?ho:-1,l(t)._overflowDayOfYear&&(io>e||e>no)&&(e=no),l(t).overflow=e),t}function Q(t){e.suppressDeprecationWarnings===!1&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+t)}function $(t,e){var i=!0,o=t+"\n"+(new Error).stack;return a(function(){return i&&(Q(o),i=!1),e.apply(this,arguments)},e)}function tt(t,e){co[t]||(Q(e),co[t]=!0)}function et(t){var e,i,o=t._i,n=po.exec(o);if(n){for(l(t).iso=!0,e=0,i=fo.length;i>e;e++)if(fo[e][1].exec(o)){t._f=fo[e][0]+(n[6]||" ");break}for(e=0,i=mo.length;i>e;e++)if(mo[e][1].exec(o)){t._f+=mo[e][0];break}o.match(Ji)&&(t._f+="Z"),wt(t)}else t._isValid=!1}function it(t){var i=vo.exec(t._i);return null!==i?void(t._d=new Date(+i[1])):(et(t),void(t._isValid===!1&&(delete t._isValid,e.createFromInputFallback(t))))}function ot(t,e,i,o,n,s,r){var a=new Date(t,e,i,o,n,s,r);return 1970>t&&a.setFullYear(t),a}function nt(t){var e=new Date(Date.UTC.apply(null,arguments));return 1970>t&&e.setUTCFullYear(t),e}function st(t){return rt(t)?366:365}function rt(t){return t%4===0&&t%100!==0||t%400===0}function at(){return rt(this.year())}function ht(t,e,i){var o,n=i-e,s=i-t.day();return s>n&&(s-=7),n-7>s&&(s+=7),o=Tt(t).add(s,"d"),{week:Math.ceil(o.dayOfYear()/7),year:o.year()}}function dt(t){return ht(t,this._week.dow,this._week.doy).week}function lt(){return this._week.dow}function ut(){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=ht(this,1,4).week;return null==t?e:this.add(7*(t-e),"d")}function ft(t,e,i,o,n){var s,r,a=nt(t,0,1).getUTCDay();return a=0===a?7:a,i=null!=i?i:n,s=n-a+(a>o?7:0)-(n>a?7:0),r=7*(e-1)+(i-n)+s+1,{year:r>0?t:t-1,dayOfYear:r>0?r:st(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 vt(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 yt(t){var e,i,o,n,s=[];if(!t._d){for(o=gt(t),t._w&&null==t._a[no]&&null==t._a[oo]&&bt(t),t._dayOfYear&&(n=vt(t._a[io],o[io]),t._dayOfYear>st(n)&&(l(t)._overflowDayOfYear=!0),i=nt(n,0,t._dayOfYear),t._a[oo]=i.getUTCMonth(),t._a[no]=i.getUTCDate()),e=0;3>e&&null==t._a[e];++e)t._a[e]=s[e]=o[e];for(;7>e;e++)t._a[e]=s[e]=null==t._a[e]?2===e?1:0:t._a[e];24===t._a[so]&&0===t._a[ro]&&0===t._a[ao]&&0===t._a[ho]&&(t._nextDay=!0,t._a[so]=0),t._d=(t._useUTC?nt:ot).apply(null,s),null!=t._tzm&&t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),t._nextDay&&(t._a[so]=24)}}function bt(t){var e,i,o,n,s,r,a;e=t._w,null!=e.GG||null!=e.W||null!=e.E?(s=1,r=4,i=vt(e.GG,t._a[io],ht(Tt(),1,4).year),o=vt(e.W,1),n=vt(e.E,1)):(s=t._locale._week.dow,r=t._locale._week.doy,i=vt(e.gg,t._a[io],ht(Tt(),s,r).year),o=vt(e.w,1),null!=e.d?(n=e.d,s>n&&++o):n=null!=e.e?e.e+s:s),a=ft(i,o,n,r,s),t._a[io]=a.year,t._dayOfYear=a.dayOfYear}function wt(t){if(t._f===e.ISO_8601)return void et(t);t._a=[],l(t).empty=!0;var i,o,n,s,r,a=""+t._i,h=a.length,d=0;for(n=B(t._f,t._locale).match(Li)||[],i=0;i0&&l(t).unusedInput.push(r),a=a.slice(a.indexOf(o)+o.length),d+=o.length),Fi[s]?(o?l(t).empty=!1:l(t).unusedTokens.push(s),W(s,o,t)):t._strict&&!o&&l(t).unusedTokens.push(s);l(t).charsLeftOver=h-d,a.length>0&&l(t).unusedInput.push(a),l(t).bigHour===!0&&t._a[so]<=12&&t._a[so]>0&&(l(t).bigHour=void 0),t._a[so]=_t(t._locale,t._a[so],t._meridiem),yt(t),J(t)}function _t(t,e,i){var o;return null==i?e:null!=t.meridiemHour?t.meridiemHour(e,i):null!=t.isPM?(o=t.isPM(i),o&&12>e&&(e+=12),o||12!==e||(e=0),e):e}function xt(t){var e,i,o,n,s;if(0===t._f.length)return l(t).invalidFormat=!0,void(t._d=new Date(NaN));for(n=0;ns)&&(o=s,i=e));a(t,i||e)}function kt(t){if(!t._d){var e=T(t._i);t._a=[e.year,e.month,e.day||e.date,e.hour,e.minute,e.second,e.millisecond],yt(t)}}function Mt(t){var e,i=t._i,s=t._f;return t._locale=t._locale||M(t._l),null===i||void 0===s&&""===i?c({nullInput:!0}):("string"==typeof i&&(t._i=i=t._locale.preparse(i)),m(i)?new f(J(i)):(o(s)?xt(t):s?wt(t):n(i)?t._d=i:Ot(t),e=new f(J(t)),e._nextDay&&(e.add(1,"d"),e._nextDay=void 0),e))}function Ot(t){var i=t._i;void 0===i?t._d=new Date:n(i)?t._d=new Date(+i):"string"==typeof i?it(t):o(i)?(t._a=s(i.slice(0),function(t){return parseInt(t,10)}),yt(t)):"object"==typeof i?kt(t):"number"==typeof i?t._d=new Date(i):e.createFromInputFallback(t)}function Dt(t,e,i,o,n){var s={};return"boolean"==typeof i&&(o=i,i=void 0),s._isAMomentObject=!0,s._useUTC=s._isUTC=n,s._l=i,s._i=t,s._f=e,s._strict=o,Mt(s)}function Tt(t,e,i,o){return Dt(t,e,i,o,!1)}function Ct(t,e){var i,n;if(1===e.length&&o(e[0])&&(e=e[0]),!e.length)return Tt();for(i=e[0],n=1;nt&&(t=-t,i="-"),i+I(~~(t/60),2)+e+I(~~t%60,2)})}function zt(t){var e=(t||"").match(Ji)||[],i=e[e.length-1]||[],o=(i+"").match(_o)||["-",0,0],n=+(60*o[1])+v(o[2]);return"+"===o[0]?n:-n}function At(t,i){var o,s;return i._isUTC?(o=i.clone(),s=(m(t)||n(t)?+t:+Tt(t))-+o,o._d.setTime(+o._d+s),e.updateOffset(o,!1),o):Tt(t).local()}function Lt(t){return 15*-Math.round(t._d.getTimezoneOffset()/15)}function Bt(t,i){var o,n=this._offset||0;return null!=t?("string"==typeof t&&(t=zt(t)),Math.abs(t)<16&&(t=60*t),!this._isUTC&&i&&(o=Lt(this)),this._offset=t,this._isUTC=!0,null!=o&&this.add(o,"m"),n!==t&&(!i||this._changeInProgress?$t(this,Xt(t-n,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,e.updateOffset(this,!0),this._changeInProgress=null)),this):this._isUTC?n:Lt(this)}function Rt(t,e){return null!=t?("string"!=typeof t&&(t=-t),this.utcOffset(t,e),this):-this.utcOffset()}function Ft(t){return this.utcOffset(0,t)}function jt(t){return this._isUTC&&(this.utcOffset(0,t),this._isUTC=!1,t&&this.subtract(Lt(this),"m")),this}function Ht(){return this._tzm?this.utcOffset(this._tzm):"string"==typeof this._i&&this.utcOffset(zt(this._i)),this}function Yt(t){return t=t?Tt(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?h(this._a):Tt(this._a);return this.isValid()&&g(this._a,t.toArray())>0}return!1}function Ut(){return!this._isUTC}function Vt(){return this._isUTC}function qt(){return this._isUTC&&0===this._offset}function Xt(t,e){var i,o,n,s=t,a=null;return It(t)?s={ms:t._milliseconds,d:t._days,M:t._months}:"number"==typeof t?(s={},e?s[e]=t:s.milliseconds=t):(a=xo.exec(t))?(i="-"===a[1]?-1:1,s={y:0,d:v(a[no])*i,h:v(a[so])*i,m:v(a[ro])*i,s:v(a[ao])*i,ms:v(a[ho])*i}):(a=ko.exec(t))?(i="-"===a[1]?-1:1,s={y:Zt(a[2],i),M:Zt(a[3],i),d:Zt(a[4],i),h:Zt(a[5],i),m:Zt(a[6],i),s:Zt(a[7],i),w:Zt(a[8],i)}):null==s?s={}:"object"==typeof s&&("from"in s||"to"in s)&&(n=Jt(Tt(s.from),Tt(s.to)),s={},s.ms=n.milliseconds,s.M=n.months),o=new Pt(s),It(t)&&r(t,"_locale")&&(o._locale=t._locale),o}function Zt(t,e){var i=t&&parseFloat(t.replace(",","."));return(isNaN(i)?0:i)*e}function Kt(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 Jt(t,e){var i;return e=At(e,t),t.isBefore(e)?i=Kt(t,e):(i=Kt(e,t),i.milliseconds=-i.milliseconds,i.months=-i.months),i}function Qt(t,e){return function(i,o){var n,s;return null===o||isNaN(+o)||(tt(e,"moment()."+e+"(period, number) is deprecated. Please use moment()."+e+"(number, period)."),s=i,i=o,o=s),i="string"==typeof i?+i:i,n=Xt(i,o),$t(this,n,t),this}}function $t(t,i,o,n){var s=i._milliseconds,r=i._days,a=i._months;n=null==n?!0:n,s&&t._d.setTime(+t._d+s*o),r&&S(t,"Date",E(t,"Date")+r*o),a&&X(t,E(t,"Month")+a*o),n&&e.updateOffset(t,r||a)}function te(t){var e=t||Tt(),i=At(e,this).startOf("day"),o=this.diff(i,"days",!0),n=-6>o?"sameElse":-1>o?"lastWeek":0>o?"lastDay":1>o?"sameDay":2>o?"nextDay":7>o?"nextWeek":"sameElse";return this.format(this.localeData().calendar(n,this,Tt(e)))}function ee(){return new f(this)}function ie(t,e){var i;return e=D("undefined"!=typeof e?e:"millisecond"),"millisecond"===e?(t=m(t)?t:Tt(t),+this>+t):(i=m(t)?+t:+Tt(t),i<+this.clone().startOf(e))}function oe(t,e){var i;return e=D("undefined"!=typeof e?e:"millisecond"),"millisecond"===e?(t=m(t)?t:Tt(t),+t>+this):(i=m(t)?+t:+Tt(t),+this.clone().endOf(e)t?Math.ceil(t):Math.floor(t)}function ae(t,e,i){var o,n,s=At(t,this),r=6e4*(s.utcOffset()-this.utcOffset());return e=D(e),"year"===e||"month"===e||"quarter"===e?(n=he(this,s),"quarter"===e?n/=3:"year"===e&&(n/=12)):(o=this-s,n="second"===e?o/1e3:"minute"===e?o/6e4:"hour"===e?o/36e5:"day"===e?(o-r)/864e5:"week"===e?(o-r)/6048e5:o),i?n:re(n)}function he(t,e){var i,o,n=12*(e.year()-t.year())+(e.month()-t.month()),s=t.clone().add(n,"months");return 0>e-s?(i=t.clone().add(n-1,"months"),o=(e-s)/(s-i)):(i=t.clone().add(n+1,"months"),o=(e-s)/(i-s)),-(n+o)}function de(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")}function le(){var t=this.clone().utc();return 0e;e++)if(this._weekdaysParse[e]||(i=Tt([2e3,1]).day(e),o="^"+this.weekdays(i,"")+"|^"+this.weekdaysShort(i,"")+"|^"+this.weekdaysMin(i,""),this._weekdaysParse[e]=new RegExp(o.replace(".",""),"i")),this._weekdaysParse[e].test(t))return e}function Fe(t){var e=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=t?(t=ze(t,this.localeData()),this.add(t-e,"d")):e}function je(t){var e=(this.day()+7-this.localeData()._week.dow)%7;return null==t?e:this.add(t-e,"d")}function He(t){return null==t?this.day()||7:this.day(this.day()%7?t:t-7)}function Ye(t,e){N(t,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),e)})}function We(t,e){return e._meridiemParse}function Ge(t){return"p"===(t+"").toLowerCase().charAt(0)}function Ue(t,e,i){return t>11?i?"pm":"PM":i?"am":"AM"}function Ve(t){N(0,[t,3],0,"millisecond")}function qe(){return this._isUTC?"UTC":""}function Xe(){return this._isUTC?"Coordinated Universal Time":""}function Ze(t){return Tt(1e3*t)}function Ke(){return Tt.apply(null,arguments).parseZone()}function Je(t,e,i){var o=this._calendar[t];return"function"==typeof o?o.call(e,i):o}function Qe(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 $e(){return this._invalidDate}function ti(t){return this._ordinal.replace("%d",t)}function ei(t){return t}function ii(t,e,i,o){var n=this._relativeTime[i];return"function"==typeof n?n(t,e,i,o):n.replace(/%d/i,t)}function oi(t,e){var i=this._relativeTime[t>0?"future":"past"];return"function"==typeof i?i(e):i.replace(/%s/i,e)}function ni(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 si(t,e,i,o){var n=M(),s=h().set(o,e);return n[i](s,t)}function ri(t,e,i,o,n){if("number"==typeof t&&(e=t,t=void 0),t=t||"",null!=e)return si(t,e,i,n);var s,r=[];for(s=0;o>s;s++)r[s]=si(t,s,i,n);return r}function ai(t,e){return ri(t,e,"months",12,"month")}function hi(t,e){return ri(t,e,"monthsShort",12,"month")}function di(t,e){return ri(t,e,"weekdays",7,"day")}function li(t,e){return ri(t,e,"weekdaysShort",7,"day")}function ui(t,e){return ri(t,e,"weekdaysMin",7,"day")}function ci(){var t=this._data;return this._milliseconds=Uo(this._milliseconds),this._days=Uo(this._days),this._months=Uo(this._months),t.milliseconds=Uo(t.milliseconds),t.seconds=Uo(t.seconds),t.minutes=Uo(t.minutes),t.hours=Uo(t.hours),t.months=Uo(t.months),t.years=Uo(t.years),this}function pi(t,e,i,o){var n=Xt(e,i);return t._milliseconds+=o*n._milliseconds,t._days+=o*n._days,t._months+=o*n._months,t._bubble()}function fi(t,e){return pi(this,t,e,1)}function mi(t,e){return pi(this,t,e,-1)}function vi(){var t,e,i,o=this._milliseconds,n=this._days,s=this._months,r=this._data,a=0;return r.milliseconds=o%1e3,t=re(o/1e3),r.seconds=t%60,e=re(t/60),r.minutes=e%60,i=re(e/60),r.hours=i%24,n+=re(i/24),a=re(gi(n)),n-=re(yi(a)),s+=re(n/30),n%=30,a+=re(s/12),s%=12,r.days=n,r.months=s,r.years=a,this}function gi(t){return 400*t/146097}function yi(t){return 146097*t/400}function bi(t){var e,i,o=this._milliseconds;if(t=D(t),"month"===t||"year"===t)return e=this._days+o/864e5,i=this._months+12*gi(e),"month"===t?i:i/12;switch(e=this._days+Math.round(yi(this._months/12)),t){case"week":return e/7+o/6048e5;case"day":return e+o/864e5;case"hour":return 24*e+o/36e5;case"minute":return 1440*e+o/6e4;case"second":return 86400*e+o/1e3;case"millisecond":return Math.floor(864e5*e)+o;default:throw new Error("Unknown unit "+t)}}function wi(){return this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*v(this._months/12)}function _i(t){return function(){return this.as(t)}}function xi(t){return t=D(t),this[t+"s"]()}function ki(t){return function(){return this._data[t]}}function Mi(){return re(this.days()/7)}function Oi(t,e,i,o,n){return n.relativeTime(e||1,!!i,t,o)}function Di(t,e,i){var o=Xt(t).abs(),n=hn(o.as("s")),s=hn(o.as("m")),r=hn(o.as("h")),a=hn(o.as("d")),h=hn(o.as("M")),d=hn(o.as("y")),l=n0,l[4]=i,Oi.apply(null,l)}function Ti(t,e){return void 0===dn[t]?!1:void 0===e?dn[t]:(dn[t]=e,!0)}function Ci(t){var e=this.localeData(),i=Di(this,!t,e);return t&&(i=e.pastFuture(+this,i)),e.postformat(i)}function Ei(){var t=ln(this.years()),e=ln(this.months()),i=ln(this.days()),o=ln(this.hours()),n=ln(this.minutes()),s=ln(this.seconds()+this.milliseconds()/1e3),r=this.asSeconds();return r?(0>r?"-":"")+"P"+(t?t+"Y":"")+(e?e+"M":"")+(i?i+"D":"")+(o||n||s?"T":"")+(o?o+"H":"")+(n?n+"M":"")+(s?s+"S":""):"P0D"}var Si,Pi,Ii=e.momentProperties=[],Ni=!1,zi={},Ai={},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,Bi=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,Ri={},Fi={},ji=/\d/,Hi=/\d\d/,Yi=/\d{3}/,Wi=/\d{4}/,Gi=/[+-]?\d{6}/,Ui=/\d\d?/,Vi=/\d{1,3}/,qi=/\d{1,4}/,Xi=/[+-]?\d{1,6}/,Zi=/\d+/,Ki=/[+-]?\d+/,Ji=/Z|[+-]\d\d:?\d\d/gi,Qi=/[+-]?\d+(\.\d{1,3})?/,$i=/[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,to={},eo={},io=0,oo=1,no=2,so=3,ro=4,ao=5,ho=6; +N("M",["MM",2],"Mo",function(){return this.month()+1}),N("MMM",0,0,function(t){return this.localeData().monthsShort(this,t)}),N("MMMM",0,0,function(t){return this.localeData().months(this,t)}),O("month","M"),R("M",Ui),R("MM",Ui,Hi),R("MMM",$i),R("MMMM",$i),H(["M","MM"],function(t,e){e[oo]=v(t)-1}),H(["MMM","MMMM"],function(t,e,i,o){var n=i._locale.monthsParse(t,o,i._strict);null!=n?e[oo]=n:l(i).invalidMonth=t});var lo="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),uo="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),co={};e.suppressDeprecationWarnings=!1;var po=/^\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)?)?$/,fo=[["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}/]],mo=[["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/]],vo=/^\/?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":""))}),N(0,["YY",2],0,function(){return this.year()%100}),N(0,["YYYY",4],0,"year"),N(0,["YYYYY",5],0,"year"),N(0,["YYYYYY",6,!0],0,"year"),O("year","y"),R("Y",Ki),R("YY",Ui,Hi),R("YYYY",qi,Wi),R("YYYYY",Xi,Gi),R("YYYYYY",Xi,Gi),H(["YYYY","YYYYY","YYYYYY"],io),H("YY",function(t,i){i[io]=e.parseTwoDigitYear(t)}),e.parseTwoDigitYear=function(t){return v(t)+(v(t)>68?1900:2e3)};var go=C("FullYear",!1);N("w",["ww",2],"wo","week"),N("W",["WW",2],"Wo","isoWeek"),O("week","w"),O("isoWeek","W"),R("w",Ui),R("ww",Ui,Hi),R("W",Ui),R("WW",Ui,Hi),Y(["w","ww","W","WW"],function(t,e,i,o){e[o.substr(0,1)]=v(t)});var yo={dow:0,doy:6};N("DDD",["DDDD",3],"DDDo","dayOfYear"),O("dayOfYear","DDD"),R("DDD",Vi),R("DDDD",Yi),H(["DDD","DDDD"],function(t,e,i){i._dayOfYear=v(t)}),e.ISO_8601=function(){};var bo=$("moment().min is deprecated, use moment.min instead. https://github.com/moment/moment/issues/1548",function(){var t=Tt.apply(null,arguments);return this>t?this:t}),wo=$("moment().max is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548",function(){var t=Tt.apply(null,arguments);return t>this?this:t});Nt("Z",":"),Nt("ZZ",""),R("Z",Ji),R("ZZ",Ji),H(["Z","ZZ"],function(t,e,i){i._useUTC=!0,i._tzm=zt(t)});var _o=/([\+\-]|\d\d)/gi;e.updateOffset=function(){};var xo=/(\-)?(?:(\d*)\.)?(\d+)\:(\d+)(?:\:(\d+)\.?(\d{3})?)?/,ko=/^(-)?P(?:(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?|([0-9,.]*)W)$/;Xt.fn=Pt.prototype;var Mo=Qt(1,"add"),Oo=Qt(-1,"subtract");e.defaultFormat="YYYY-MM-DDTHH:mm:ssZ";var Do=$("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)});N(0,["gg",2],0,function(){return this.weekYear()%100}),N(0,["GG",2],0,function(){return this.isoWeekYear()%100}),Te("gggg","weekYear"),Te("ggggg","weekYear"),Te("GGGG","isoWeekYear"),Te("GGGGG","isoWeekYear"),O("weekYear","gg"),O("isoWeekYear","GG"),R("G",Ki),R("g",Ki),R("GG",Ui,Hi),R("gg",Ui,Hi),R("GGGG",qi,Wi),R("gggg",qi,Wi),R("GGGGG",Xi,Gi),R("ggggg",Xi,Gi),Y(["gggg","ggggg","GGGG","GGGGG"],function(t,e,i,o){e[o.substr(0,2)]=v(t)}),Y(["gg","GG"],function(t,i,o,n){i[n]=e.parseTwoDigitYear(t)}),N("Q",0,0,"quarter"),O("quarter","Q"),R("Q",ji),H("Q",function(t,e){e[oo]=3*(v(t)-1)}),N("D",["DD",2],"Do","date"),O("date","D"),R("D",Ui),R("DD",Ui,Hi),R("Do",function(t,e){return t?e._ordinalParse:e._ordinalParseLenient}),H(["D","DD"],no),H("Do",function(t,e){e[no]=v(t.match(Ui)[0],10)});var To=C("Date",!0);N("d",0,"do","day"),N("dd",0,0,function(t){return this.localeData().weekdaysMin(this,t)}),N("ddd",0,0,function(t){return this.localeData().weekdaysShort(this,t)}),N("dddd",0,0,function(t){return this.localeData().weekdays(this,t)}),N("e",0,0,"weekday"),N("E",0,0,"isoWeekday"),O("day","d"),O("weekday","e"),O("isoWeekday","E"),R("d",Ui),R("e",Ui),R("E",Ui),R("dd",$i),R("ddd",$i),R("dddd",$i),Y(["dd","ddd","dddd"],function(t,e,i){var o=i._locale.weekdaysParse(t);null!=o?e.d=o:l(i).invalidWeekday=t}),Y(["d","e","E"],function(t,e,i,o){e[o]=v(t)});var Co="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Eo="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),So="Su_Mo_Tu_We_Th_Fr_Sa".split("_");N("H",["HH",2],0,"hour"),N("h",["hh",2],0,function(){return this.hours()%12||12}),Ye("a",!0),Ye("A",!1),O("hour","h"),R("a",We),R("A",We),R("H",Ui),R("h",Ui),R("HH",Ui,Hi),R("hh",Ui,Hi),H(["H","HH"],so),H(["a","A"],function(t,e,i){i._isPm=i._locale.isPM(t),i._meridiem=t}),H(["h","hh"],function(t,e,i){e[so]=v(t),l(i).bigHour=!0});var Po=/[ap]\.?m?\.?/i,Io=C("Hours",!0);N("m",["mm",2],0,"minute"),O("minute","m"),R("m",Ui),R("mm",Ui,Hi),H(["m","mm"],ro);var No=C("Minutes",!1);N("s",["ss",2],0,"second"),O("second","s"),R("s",Ui),R("ss",Ui,Hi),H(["s","ss"],ao);var zo=C("Seconds",!1);N("S",0,0,function(){return~~(this.millisecond()/100)}),N(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),Ve("SSS"),Ve("SSSS"),O("millisecond","ms"),R("S",Vi,ji),R("SS",Vi,Hi),R("SSS",Vi,Yi),R("SSSS",Zi),H(["S","SS","SSS","SSSS"],function(t,e){e[ho]=v(1e3*("0."+t))});var Ao=C("Milliseconds",!1);N("z",0,0,"zoneAbbr"),N("zz",0,0,"zoneName");var Lo=f.prototype;Lo.add=Mo,Lo.calendar=te,Lo.clone=ee,Lo.diff=ae,Lo.endOf=be,Lo.format=ue,Lo.from=ce,Lo.fromNow=pe,Lo.to=fe,Lo.toNow=me,Lo.get=P,Lo.invalidAt=De,Lo.isAfter=ie,Lo.isBefore=oe,Lo.isBetween=ne,Lo.isSame=se,Lo.isValid=Me,Lo.lang=Do,Lo.locale=ve,Lo.localeData=ge,Lo.max=wo,Lo.min=bo,Lo.parsingFlags=Oe,Lo.set=P,Lo.startOf=ye,Lo.subtract=Oo,Lo.toArray=ke,Lo.toDate=xe,Lo.toISOString=le,Lo.toJSON=le,Lo.toString=de,Lo.unix=_e,Lo.valueOf=we,Lo.year=go,Lo.isLeapYear=at,Lo.weekYear=Ee,Lo.isoWeekYear=Se,Lo.quarter=Lo.quarters=Ne,Lo.month=Z,Lo.daysInMonth=K,Lo.week=Lo.weeks=ct,Lo.isoWeek=Lo.isoWeeks=pt,Lo.weeksInYear=Ie,Lo.isoWeeksInYear=Pe,Lo.date=To,Lo.day=Lo.days=Fe,Lo.weekday=je,Lo.isoWeekday=He,Lo.dayOfYear=mt,Lo.hour=Lo.hours=Io,Lo.minute=Lo.minutes=No,Lo.second=Lo.seconds=zo,Lo.millisecond=Lo.milliseconds=Ao,Lo.utcOffset=Bt,Lo.utc=Ft,Lo.local=jt,Lo.parseZone=Ht,Lo.hasAlignedHourOffset=Yt,Lo.isDST=Wt,Lo.isDSTShifted=Gt,Lo.isLocal=Ut,Lo.isUtcOffset=Vt,Lo.isUtc=qt,Lo.isUTC=qt,Lo.zoneAbbr=qe,Lo.zoneName=Xe,Lo.dates=$("dates accessor is deprecated. Use date instead.",To),Lo.months=$("months accessor is deprecated. Use month instead",Z),Lo.years=$("years accessor is deprecated. Use year instead",go),Lo.zone=$("moment().zone is deprecated, use moment().utcOffset instead. https://github.com/moment/moment/issues/1779",Rt);var Bo=Lo,Ro={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},Fo={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"},jo="Invalid date",Ho="%d",Yo=/\d{1,2}/,Wo={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"},Go=y.prototype;Go._calendar=Ro,Go.calendar=Je,Go._longDateFormat=Fo,Go.longDateFormat=Qe,Go._invalidDate=jo,Go.invalidDate=$e,Go._ordinal=Ho,Go.ordinal=ti,Go._ordinalParse=Yo,Go.preparse=ei,Go.postformat=ei,Go._relativeTime=Wo,Go.relativeTime=ii,Go.pastFuture=oi,Go.set=ni,Go.months=U,Go._months=lo,Go.monthsShort=V,Go._monthsShort=uo,Go.monthsParse=q,Go.week=dt,Go._week=yo,Go.firstDayOfYear=ut,Go.firstDayOfWeek=lt,Go.weekdays=Ae,Go._weekdays=Co,Go.weekdaysMin=Be,Go._weekdaysMin=So,Go.weekdaysShort=Le,Go._weekdaysShort=Eo,Go.weekdaysParse=Re,Go.isPM=Ge,Go._meridiemParse=Po,Go.meridiem=Ue,x("en",{ordinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(t){var e=t%10,i=1===v(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.",M);var Uo=Math.abs,Vo=_i("ms"),qo=_i("s"),Xo=_i("m"),Zo=_i("h"),Ko=_i("d"),Jo=_i("w"),Qo=_i("M"),$o=_i("y"),tn=ki("milliseconds"),en=ki("seconds"),on=ki("minutes"),nn=ki("hours"),sn=ki("days"),rn=ki("months"),an=ki("years"),hn=Math.round,dn={s:45,m:45,h:22,d:26,M:11},ln=Math.abs,un=Pt.prototype;un.abs=ci,un.add=fi,un.subtract=mi,un.as=bi,un.asMilliseconds=Vo,un.asSeconds=qo,un.asMinutes=Xo,un.asHours=Zo,un.asDays=Ko,un.asWeeks=Jo,un.asMonths=Qo,un.asYears=$o,un.valueOf=wi,un._bubble=vi,un.get=xi,un.milliseconds=tn,un.seconds=en,un.minutes=on,un.hours=nn,un.days=sn,un.weeks=Mi,un.months=rn,un.years=an,un.humanize=Ci,un.toISOString=Ei,un.toString=Ei,un.toJSON=Ei,un.locale=ve,un.localeData=ge,un.toIsoString=$("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",Ei),un.lang=Do,N("X",0,0,"unix"),N("x",0,0,"valueOf"),R("x",Ki),R("X",Qi),H("X",function(t,e,i){i._d=new Date(1e3*parseFloat(t,10))}),H("x",function(t,e,i){i._d=new Date(v(t))}),e.version="2.10.3",i(Tt),e.fn=Bo,e.min=Et,e.max=St,e.utc=h,e.unix=Ze,e.months=ai,e.isDate=n,e.locale=x,e.invalid=c,e.duration=Xt,e.isMoment=m,e.weekdays=di,e.parseZone=Ke,e.localeData=M,e.isDuration=It,e.monthsShort=hi,e.weekdaysMin=ui,e.defineLocale=k,e.weekdaysShort=li,e.normalizeUnits=D,e.relativeTimeThreshold=Ti;var cn=e;return cn})}).call(e,i(10)(t))},function(t,e,i){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children=[],t.webpackPolyfill=1),t}},function(t,e,i){function o(t){throw new Error("Cannot find module '"+t+"'.")}o.keys=function(){return[]},o.resolve=o,t.exports=o,o.id=11},function(t,e,i){(function(e){function i(t,e,i){var o=e&&i||0,n=0;for(e=e||[],t.toLowerCase().replace(/[0-9a-f]{2}/g,function(t){16>n&&(e[o+n++]=u[t])});16>n;)e[o+n++]=0;return e}function o(t,e){var i=e||0,o=l;return o[t[i++]]+o[t[i++]]+o[t[i++]]+o[t[i++]]+"-"+o[t[i++]]+o[t[i++]]+"-"+o[t[i++]]+o[t[i++]]+"-"+o[t[i++]]+o[t[i++]]+"-"+o[t[i++]]+o[t[i++]]+o[t[i++]]+o[t[i++]]+o[t[i++]]+o[t[i++]]}function n(t,e,i){var n=e&&i||0,s=e||[];t=t||{};var r=void 0!==t.clockseq?t.clockseq:m,a=void 0!==t.msecs?t.msecs:(new Date).getTime(),h=void 0!==t.nsecs?t.nsecs:g+1,d=a-v+(h-g)/1e4;if(0>d&&void 0===t.clockseq&&(r=r+1&16383),(0>d||a>v)&&void 0===t.nsecs&&(h=0),h>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");v=a,g=h,m=r,a+=122192928e5;var l=(1e4*(268435455&a)+h)%4294967296;s[n++]=l>>>24&255,s[n++]=l>>>16&255,s[n++]=l>>>8&255,s[n++]=255&l;var u=a/4294967296*1e4&268435455;s[n++]=u>>>8&255,s[n++]=255&u,s[n++]=u>>>24&15|16,s[n++]=u>>>16&255,s[n++]=r>>>8|128,s[n++]=255&r;for(var c=t.node||f,p=0;6>p;p++)s[n+p]=c[p];return e?e:o(s)}function s(t,e,i){var n=e&&i||0;"string"==typeof t&&(e="binary"==t?new Array(16):null,t=null),t=t||{};var s=t.random||(t.rng||r)();if(s[6]=15&s[6]|64,s[8]=63&s[8]|128,e)for(var a=0;16>a;a++)e[n+a]=s[a];return e||o(s)}var r,a="undefined"!=typeof window?window:"undefined"!=typeof e?e:null;if(a&&a.crypto&&crypto.getRandomValues){var h=new Uint8Array(16);r=function(){return crypto.getRandomValues(h),h}}if(!r){var d=new Array(16);r=function(){for(var t,e=0;16>e;e++)0===(3&e)&&(t=4294967296*Math.random()),d[e]=t>>>((3&e)<<3)&255;return d}}for(var l=[],u={},c=0;256>c;c++)l[c]=(c+256).toString(16).substr(1),u[l[c]]=c;var p=r(),f=[1|p[0],p[1],p[2],p[3],p[4],p[5]],m=16383&(p[6]<<8|p[7]),v=0,g=0,y=s;y.v1=n,y.v4=s,y.parse=i,y.unparse=o,t.exports=y}).call(e,function(){return this}())},function(t,e,i){e.prepareElements=function(t){for(var e in t)t.hasOwnProperty(e)&&(t[e].redundant=t[e].used,t[e].used=[])},e.cleanupElements=function(t){for(var e in t)if(t.hasOwnProperty(e)&&t[e].redundant){for(var i=0;i0?(o=e[t].redundant[0],e[t].redundant.shift()):(o=document.createElementNS("http://www.w3.org/2000/svg",t),i.appendChild(o)):(o=document.createElementNS("http://www.w3.org/2000/svg",t),e[t]={used:[],redundant:[]},i.appendChild(o)),e[t].used.push(o),o},e.getDOMElement=function(t,e,i,o){var n;return e.hasOwnProperty(t)?e[t].redundant.length>0?(n=e[t].redundant[0],e[t].redundant.shift()):(n=document.createElement(t),void 0!==o?i.insertBefore(n,o):i.appendChild(n)):(n=document.createElement(t),e[t]={used:[],redundant:[]},void 0!==o?i.insertBefore(n,o):i.appendChild(n)),e[t].used.push(n),n},e.drawPoint=function(t,i,o,n,s,r){var a;if("circle"==o.options.drawPoints.style?(a=e.getSVGElement("circle",n,s),a.setAttributeNS(null,"cx",t),a.setAttributeNS(null,"cy",i),a.setAttributeNS(null,"r",.5*o.options.drawPoints.size)):(a=e.getSVGElement("rect",n,s),a.setAttributeNS(null,"x",t-.5*o.options.drawPoints.size),a.setAttributeNS(null,"y",i-.5*o.options.drawPoints.size),a.setAttributeNS(null,"width",o.options.drawPoints.size),a.setAttributeNS(null,"height",o.options.drawPoints.size)),void 0!==o.options.drawPoints.styles&&a.setAttributeNS(null,"style",o.group.options.drawPoints.styles),a.setAttributeNS(null,"class",o.className+" vis-point"),r){var h=e.getSVGElement("text",n,s);r.xOffset&&(t+=r.xOffset),r.yOffset&&(i+=r.yOffset),r.content&&(h.textContent=r.content),r.className&&h.setAttributeNS(null,"class",r.className+" vis-label"),h.setAttributeNS(null,"x",t),h.setAttributeNS(null,"y",i)}return a},e.drawBar=function(t,i,o,n,s,r,a,h){if(0!=n){0>n&&(n*=-1,i-=n);var d=e.getSVGElement("rect",r,a);d.setAttributeNS(null,"x",t-.5*o),d.setAttributeNS(null,"y",i),d.setAttributeNS(null,"width",o),d.setAttributeNS(null,"height",n),d.setAttributeNS(null,"class",s),h&&d.setAttributeNS(null,"style",h)}}},function(t,e,i){function o(t,e){if(t&&!Array.isArray(t)&&(e=t,t=null),this._options=e||{},this._data={},this.length=0,this._fieldId=this._options.fieldId||"id",this._type={},this._options.type)for(var i in this._options.type)if(this._options.type.hasOwnProperty(i)){var o=this._options.type[i];"Date"==o||"ISODate"==o||"ASPDate"==o?this._type[i]="Date":this._type[i]=o}if(this._options.convert)throw new Error('Option "convert" is deprecated. Use "type" instead.');this._subscribers={},t&&this.add(t),this.setOptions(e)}var n=i(7),s=i(15);o.prototype.setOptions=function(t){t&&void 0!==t.queue&&(t.queue===!1?this._queue&&(this._queue.destroy(),delete this._queue):(this._queue||(this._queue=s.extend(this,{replace:["add","update","remove"]})),"object"==typeof t.queue&&this._queue.setOptions(t.queue)))},o.prototype.on=function(t,e){var i=this._subscribers[t];i||(i=[],this._subscribers[t]=i),i.push({callback:e})},o.prototype.subscribe=function(){throw new Error("DataSet.subscribe is deprecated. Use DataSet.on instead.")},o.prototype.off=function(t,e){var i=this._subscribers[t];i&&(this._subscribers[t]=i.filter(function(t){return t.callback!=e}))},o.prototype.unsubscribe=function(){throw new Error("DataSet.unsubscribe is deprecated. Use DataSet.off instead.")},o.prototype._trigger=function(t,e,i){if("*"==t)throw new Error("Cannot trigger event *");var o=[];t in this._subscribers&&(o=o.concat(this._subscribers[t])),"*"in this._subscribers&&(o=o.concat(this._subscribers["*"]));for(var n=0;ns;s++)i=n._addItem(t[s]),o.push(i);else{if(!(t instanceof Object))throw new Error("Unknown dataType");i=n._addItem(t),o.push(i)}return o.length&&this._trigger("add",{items:o},e),o},o.prototype.update=function(t,e){var i=[],o=[],n=[],s=this,r=s._fieldId,a=function(t){var e=t[r];s._data[e]?(e=s._updateItem(t),o.push(e),n.push(t)):(e=s._addItem(t),i.push(e))};if(Array.isArray(t))for(var h=0,d=t.length;d>h;h++)a(t[h]);else{if(!(t instanceof Object))throw new Error("Unknown dataType");a(t)}return i.length&&this._trigger("add",{items:i},e),o.length&&this._trigger("update",{items:o,data:n},e),i.concat(o)},o.prototype.get=function(t){var e,i,o,s=this,r=n.getType(arguments[0]);"String"==r||"Number"==r?(e=arguments[0],o=arguments[1]):"Array"==r?(i=arguments[0],o=arguments[1]):o=arguments[0];var a;if(o&&o.returnType){var h=["Array","Object"];a=-1==h.indexOf(o.returnType)?"Array":o.returnType}else a="Array";var d,l,u,c,p=o&&o.type||this._options.type,f=o&&o.filter,m=[];if(void 0!=e)d=s._getItem(e,p),f&&!f(d)&&(d=null);else if(void 0!=i)for(u=0,c=i.length;c>u;u++)d=s._getItem(i[u],p),(!f||f(d))&&m.push(d);else for(l in this._data)this._data.hasOwnProperty(l)&&(d=s._getItem(l,p),(!f||f(d))&&m.push(d));if(o&&o.order&&void 0==e&&this._sort(m,o.order),o&&o.fields){var v=o.fields;if(void 0!=e)d=this._filterFields(d,v);else for(u=0,c=m.length;c>u;u++)m[u]=this._filterFields(m[u],v)}if("Object"==a){var g={};for(u=0;ue;e++)l[e]=s[e][this._fieldId]}else for(o in r)r.hasOwnProperty(o)&&(n=this._getItem(o,d),a(n)&&l.push(n[this._fieldId]));else if(h){s=[];for(o in r)r.hasOwnProperty(o)&&s.push(r[o]);for(this._sort(s,h),e=0,i=s.length;i>e;e++)l[e]=s[e][this._fieldId]}else for(o in r)r.hasOwnProperty(o)&&(n=r[o],l.push(n[this._fieldId]));return l},o.prototype.getDataSet=function(){return this},o.prototype.forEach=function(t,e){var i,o,n=e&&e.filter,s=e&&e.type||this._options.type,r=this._data;if(e&&e.order)for(var a=this.get(e),h=0,d=a.length;d>h;h++)i=a[h],o=i[this._fieldId],t(i,o);else for(o in r)r.hasOwnProperty(o)&&(i=this._getItem(o,s),(!n||n(i))&&t(i,o))},o.prototype.map=function(t,e){var i,o=e&&e.filter,n=e&&e.type||this._options.type,s=[],r=this._data;for(var a in r)r.hasOwnProperty(a)&&(i=this._getItem(a,n),(!o||o(i))&&s.push(t(i,a)));return e&&e.order&&this._sort(s,e.order),s},o.prototype._filterFields=function(t,e){if(!t)return t;var i={};if(Array.isArray(e))for(var o in t)t.hasOwnProperty(o)&&-1!=e.indexOf(o)&&(i[o]=t[o]);else for(var o in t)t.hasOwnProperty(o)&&e.hasOwnProperty(o)&&(i[e[o]]=t[o]);return i},o.prototype._sort=function(t,e){if(n.isString(e)){var i=e;t.sort(function(t,e){var o=t[i],n=e[i];return o>n?1:n>o?-1:0})}else{if("function"!=typeof e)throw new TypeError("Order must be a function or a string");t.sort(e)}},o.prototype.remove=function(t,e){var i,o,n,s=[];if(Array.isArray(t))for(i=0,o=t.length;o>i;i++)n=this._remove(t[i]),null!=n&&s.push(n);else n=this._remove(t),null!=n&&s.push(n);return s.length&&this._trigger("remove",{items:s},e),s},o.prototype._remove=function(t){if(n.isNumber(t)||n.isString(t)){if(this._data[t])return delete this._data[t],this.length--,t}else if(t instanceof Object){var e=t[this._fieldId];if(e&&this._data[e])return delete this._data[e],this.length--,e}return null},o.prototype.clear=function(t){var e=Object.keys(this._data);return this._data={},this.length=0,this._trigger("remove",{items:e},t),e},o.prototype.max=function(t){var e=this._data,i=null,o=null;for(var n in e)if(e.hasOwnProperty(n)){var s=e[n],r=s[t];null!=r&&(!i||r>o)&&(i=s,o=r)}return i},o.prototype.min=function(t){var e=this._data,i=null,o=null;for(var n in e)if(e.hasOwnProperty(n)){var s=e[n],r=s[t];null!=r&&(!i||o>r)&&(i=s,o=r)}return i},o.prototype.distinct=function(t){var e,i=this._data,o=[],s=this._options.type&&this._options.type[t]||null,r=0;for(var a in i)if(i.hasOwnProperty(a)){var h=i[a],d=h[t],l=!1;for(e=0;r>e;e++)if(o[e]==d){l=!0;break}l||void 0===d||(o[r]=d,r++)}if(s)for(e=0;ethis.max&&this.flush(),clearTimeout(this._timeout),this.queue.length>0&&"number"==typeof this.delay){var t=this;this._timeout=setTimeout(function(){t.flush()},this.delay)}},o.prototype.flush=function(){for(;this._queue.length>0;){var t=this._queue.shift();t.fn.apply(t.context||t.fn,t.args||[])}},t.exports=o},function(t,e,i){function o(t,e){this._data=null,this._ids={},this.length=0,this._options=e||{},this._fieldId="id",this._subscribers={};var i=this;this.listener=function(){i._onEvent.apply(i,arguments)},this.setData(t)}var n=i(7),s=i(14);o.prototype.setData=function(t){var e,i,o;if(this._data){this._data.off&&this._data.off("*",this.listener),e=[];for(var n in this._ids)this._ids.hasOwnProperty(n)&&e.push(n);this._ids={},this.length=0,this._trigger("remove",{items:e})}if(this._data=t,this._data){for(this._fieldId=this._options.fieldId||this._data&&this._data.options&&this._data.options.fieldId||"id",e=this._data.getIds({filter:this._options&&this._options.filter}),i=0,o=e.length;o>i;i++)n=e[i],this._ids[n]=!0;this.length=e.length,this._trigger("add",{items:e}),this._data.on&&this._data.on("*",this.listener)}},o.prototype.refresh=function(){for(var t,e=this._data.getIds({filter:this._options&&this._options.filter}),i={},o=[],n=[],s=0;so;o++)s=a[o],r=this.get(s),r&&(this._ids[s]=!0,l.push(s));break;case"update":for(o=0,n=a.length;n>o;o++)s=a[o],r=this.get(s),r?this._ids[s]?(u.push(s),d.push(e.data[o])):(this._ids[s]=!0,l.push(s)):this._ids[s]&&(delete this._ids[s],c.push(s));break;case"remove":for(o=0,n=a.length;n>o;o++)s=a[o],this._ids[s]&&(delete this._ids[s],c.push(s))}this.length+=l.length-c.length,l.length&&this._trigger("add",{items:l},i),u.length&&this._trigger("update",{items:u,data:d},i),c.length&&this._trigger("remove",{items:c},i)}},o.prototype.on=s.prototype.on,o.prototype.off=s.prototype.off,o.prototype._trigger=s.prototype._trigger,o.prototype.subscribe=o.prototype.on,o.prototype.unsubscribe=o.prototype.off,t.exports=o},function(t,e,i){function o(t,e,i){if(!(this instanceof o))throw new SyntaxError("Constructor must be called with the new operator");this.containerElement=t,this.width="400px",this.height="400px",this.margin=10,this.defaultXCenter="55%",this.defaultYCenter="50%",this.xLabel="x",this.yLabel="y",this.zLabel="z";var n=function(t){return t};this.xValueLabel=n,this.yValueLabel=n,this.zValueLabel=n,this.filterLabel="time",this.legendLabel="value",this.style=o.STYLE.DOT,this.showPerspective=!0,this.showGrid=!0,this.keepAspectRatio=!0,this.showShadow=!1,this.showGrayBottom=!1,this.showTooltip=!1,this.verticalRatio=.5,this.animationInterval=1e3,this.animationPreload=!1,this.camera=new c,this.eye=new l(0,0,-1),this.dataTable=null,this.dataPoints=null,this.colX=void 0,this.colY=void 0,this.colZ=void 0,this.colValue=void 0,this.colFilter=void 0,this.xMin=0,this.xStep=void 0,this.xMax=1,this.yMin=0,this.yStep=void 0,this.yMax=1,this.zMin=0,this.zStep=void 0,this.zMax=1,this.valueMin=0,this.valueMax=1,this.xBarWidth=1,this.yBarWidth=1,this.colorAxis="#4D4D4D",this.colorGrid="#D3D3D3",this.colorDot="#7DC1FF",this.colorDotBorder="#3267D2",this.create(),this.setOptions(i),e&&this.setData(e)}function n(t){return"clientX"in t?t.clientX:t.targetTouches[0]&&t.targetTouches[0].clientX||0}function s(t){return"clientY"in t?t.clientY:t.targetTouches[0]&&t.targetTouches[0].clientY||0}var r=i(19),a=i(14),h=i(16),d=i(7),l=i(20),u=i(18),c=i(21),p=i(22),f=i(23),m=i(24);r(o.prototype),o.prototype._setScale=function(){this.scale=new l(1/(this.xMax-this.xMin),1/(this.yMax-this.yMin),1/(this.zMax-this.zMin)),this.keepAspectRatio&&(this.scale.x3&&(this.colFilter=3);else{if(this.style!==o.STYLE.DOTCOLOR&&this.style!==o.STYLE.DOTSIZE&&this.style!==o.STYLE.BARCOLOR&&this.style!==o.STYLE.BARSIZE)throw'Unknown style "'+this.style+'"';this.colX=0,this.colY=1,this.colZ=2,this.colValue=3,t.getNumberOfColumns()>4&&(this.colFilter=4)}},o.prototype.getNumberOfRows=function(t){return t.length},o.prototype.getNumberOfColumns=function(t){var e=0;for(var i in t[0])t[0].hasOwnProperty(i)&&e++;return e},o.prototype.getDistinctValues=function(t,e){for(var i=[],o=0;ot[o][e]&&(i.min=t[o][e]),i.maxt;t++){var f=(t-c)/(p-c),v=240*f,g=this._hsv2rgb(v,1,1);u.strokeStyle=g,u.beginPath(),u.moveTo(h,r+t),u.lineTo(a,r+t),u.stroke()}u.strokeStyle=this.colorAxis,u.strokeRect(h,r,i,s)}if(this.style===o.STYLE.DOTSIZE&&(u.strokeStyle=this.colorAxis,u.fillStyle=this.colorDot,u.beginPath(),u.moveTo(h,r),u.lineTo(a,r),u.lineTo(a-i+e,d),u.lineTo(h,d),u.closePath(),u.fill(),u.stroke()),this.style===o.STYLE.DOTCOLOR||this.style===o.STYLE.DOTSIZE){var y=5,b=new m(this.valueMin,this.valueMax,(this.valueMax-this.valueMin)/5,!0);for(b.start(),b.getCurrent()0?this.yMin:this.yMax,n=this._convert3Dto2D(new l(_,r,this.zMin)),Math.cos(2*w)>0?(v.textAlign="center",v.textBaseline="top",n.y+=b):Math.sin(2*w)<0?(v.textAlign="right",v.textBaseline="middle"):(v.textAlign="left",v.textBaseline="middle"),v.fillStyle=this.colorAxis,v.fillText(" "+this.xValueLabel(i.getCurrent())+" ",n.x,n.y),i.next()}for(v.lineWidth=1,o=void 0===this.defaultYStep,i=new m(this.yMin,this.yMax,this.yStep,o),i.start(),i.getCurrent()0?this.xMin:this.xMax,n=this._convert3Dto2D(new l(s,i.getCurrent(),this.zMin)),Math.cos(2*w)<0?(v.textAlign="center",v.textBaseline="top",n.y+=b):Math.sin(2*w)>0?(v.textAlign="right",v.textBaseline="middle"):(v.textAlign="left",v.textBaseline="middle"),v.fillStyle=this.colorAxis,v.fillText(" "+this.yValueLabel(i.getCurrent())+" ",n.x,n.y),i.next();for(v.lineWidth=1,o=void 0===this.defaultZStep,i=new m(this.zMin,this.zMax,this.zStep,o),i.start(),i.getCurrent()0?this.xMin:this.xMax,r=Math.sin(w)<0?this.yMin:this.yMax;!i.end();)t=this._convert3Dto2D(new l(s,r,i.getCurrent())),v.strokeStyle=this.colorAxis,v.beginPath(),v.moveTo(t.x,t.y),v.lineTo(t.x-b,t.y),v.stroke(),v.textAlign="right",v.textBaseline="middle",v.fillStyle=this.colorAxis,v.fillText(this.zValueLabel(i.getCurrent())+" ",t.x-5,t.y),i.next();v.lineWidth=1,t=this._convert3Dto2D(new l(s,r,this.zMin)),e=this._convert3Dto2D(new l(s,r,this.zMax)),v.strokeStyle=this.colorAxis,v.beginPath(),v.moveTo(t.x,t.y),v.lineTo(e.x,e.y),v.stroke(),v.lineWidth=1,c=this._convert3Dto2D(new l(this.xMin,this.yMin,this.zMin)),p=this._convert3Dto2D(new l(this.xMax,this.yMin,this.zMin)),v.strokeStyle=this.colorAxis,v.beginPath(),v.moveTo(c.x,c.y),v.lineTo(p.x,p.y),v.stroke(),c=this._convert3Dto2D(new l(this.xMin,this.yMax,this.zMin)),p=this._convert3Dto2D(new l(this.xMax,this.yMax,this.zMin)),v.strokeStyle=this.colorAxis,v.beginPath(),v.moveTo(c.x,c.y),v.lineTo(p.x,p.y),v.stroke(),v.lineWidth=1,t=this._convert3Dto2D(new l(this.xMin,this.yMin,this.zMin)),e=this._convert3Dto2D(new l(this.xMin,this.yMax,this.zMin)),v.strokeStyle=this.colorAxis,v.beginPath(),v.moveTo(t.x,t.y),v.lineTo(e.x,e.y),v.stroke(),t=this._convert3Dto2D(new l(this.xMax,this.yMin,this.zMin)),e=this._convert3Dto2D(new l(this.xMax,this.yMax,this.zMin)),v.strokeStyle=this.colorAxis,v.beginPath(),v.moveTo(t.x,t.y),v.lineTo(e.x,e.y),v.stroke();var x=this.xLabel;x.length>0&&(u=.1/this.scale.y,s=(this.xMin+this.xMax)/2,r=Math.cos(w)>0?this.yMin-u:this.yMax+u,n=this._convert3Dto2D(new l(s,r,this.zMin)),Math.cos(2*w)>0?(v.textAlign="center",v.textBaseline="top"):Math.sin(2*w)<0?(v.textAlign="right",v.textBaseline="middle"):(v.textAlign="left",v.textBaseline="middle"),v.fillStyle=this.colorAxis,v.fillText(x,n.x,n.y));var k=this.yLabel;k.length>0&&(d=.1/this.scale.x,s=Math.sin(w)>0?this.xMin-d:this.xMax+d,r=(this.yMin+this.yMax)/2,n=this._convert3Dto2D(new l(s,r,this.zMin)),Math.cos(2*w)<0?(v.textAlign="center",v.textBaseline="top"):Math.sin(2*w)>0?(v.textAlign="right",v.textBaseline="middle"):(v.textAlign="left",v.textBaseline="middle"),v.fillStyle=this.colorAxis,v.fillText(k,n.x,n.y));var M=this.zLabel;M.length>0&&(h=30,s=Math.cos(w)>0?this.xMin:this.xMax,r=Math.sin(w)<0?this.yMin:this.yMax,a=(this.zMin+this.zMax)/2,n=this._convert3Dto2D(new l(s,r,a)),v.textAlign="right",v.textBaseline="middle",v.fillStyle=this.colorAxis,v.fillText(M,n.x-h,n.y))},o.prototype._hsv2rgb=function(t,e,i){var o,n,s,r,a,h;switch(r=i*e,a=Math.floor(t/60),h=r*(1-Math.abs(t/60%2-1)),a){case 0:o=r,n=h,s=0;break;case 1:o=h,n=r,s=0;break;case 2:o=0,n=r,s=h;break;case 3:o=0,n=h,s=r;break;case 4:o=h,n=0,s=r;break;case 5:o=r,n=0,s=h;break;default:o=0,n=0,s=0}return"RGB("+parseInt(255*o)+","+parseInt(255*n)+","+parseInt(255*s)+")"},o.prototype._redrawDataGrid=function(){var t,e,i,n,s,r,a,h,d,u,c,p,f,m=this.frame.canvas,v=m.getContext("2d");if(!(void 0===this.dataPoints||this.dataPoints.length<=0)){for(s=0;s0}else r=!0;r?(f=(t.point.z+e.point.z+i.point.z+n.point.z)/4,u=240*(1-(f-this.zMin)*this.scale.z/this.verticalRatio),c=1,this.showShadow?(p=Math.min(1+k.x/M/2,1),a=this._hsv2rgb(u,c,p),h=a):(p=1,a=this._hsv2rgb(u,c,p),h=this.colorAxis)):(a="gray",h=this.colorAxis),d=.5,v.lineWidth=d,v.fillStyle=a,v.strokeStyle=h,v.beginPath(),v.moveTo(t.screen.x,t.screen.y),v.lineTo(e.screen.x,e.screen.y),v.lineTo(n.screen.x,n.screen.y),v.lineTo(i.screen.x,i.screen.y),v.closePath(),v.fill(),v.stroke()}}else for(s=0;sc&&(c=0);var p,f,m;this.style===o.STYLE.DOTCOLOR?(p=240*(1-(d.point.value-this.valueMin)*this.scale.value),f=this._hsv2rgb(p,1,1),m=this._hsv2rgb(p,1,.8)):this.style===o.STYLE.DOTSIZE?(f=this.colorDot,m=this.colorDotBorder):(p=240*(1-(d.point.z-this.zMin)*this.scale.z/this.verticalRatio),f=this._hsv2rgb(p,1,1),m=this._hsv2rgb(p,1,.8)),i.lineWidth=1,i.strokeStyle=m,i.fillStyle=f,i.beginPath(),i.arc(d.screen.x,d.screen.y,c,0,2*Math.PI,!0),i.fill(),i.stroke()}}},o.prototype._redrawDataBar=function(){var t,e,i,n,s=this.frame.canvas,r=s.getContext("2d");if(!(void 0===this.dataPoints||this.dataPoints.length<=0)){for(t=0;t0&&(t=this.dataPoints[0],o.lineWidth=1,o.strokeStyle="blue",o.beginPath(),o.moveTo(t.screen.x,t.screen.y)),e=1;e0&&o.stroke()}},o.prototype._onMouseDown=function(t){if(t=t||window.event,this.leftButtonDown&&this._onMouseUp(t),this.leftButtonDown=t.which?1===t.which:1===t.button,this.leftButtonDown||this.touchDown){this.startMouseX=n(t),this.startMouseY=s(t),this.startStart=new Date(this.start),this.startEnd=new Date(this.end),this.startArmRotation=this.camera.getArmRotation(),this.frame.style.cursor="move";var e=this;this.onmousemove=function(t){e._onMouseMove(t)},this.onmouseup=function(t){e._onMouseUp(t)},d.addEventListener(document,"mousemove",e.onmousemove),d.addEventListener(document,"mouseup",e.onmouseup),d.preventDefault(t)}},o.prototype._onMouseMove=function(t){t=t||window.event;var e=parseFloat(n(t))-this.startMouseX,i=parseFloat(s(t))-this.startMouseY,o=this.startArmRotation.horizontal+e/200,r=this.startArmRotation.vertical+i/200,a=4,h=Math.sin(a/360*2*Math.PI);Math.abs(Math.sin(o))0?1:0>t?-1:0}var o=e[0],n=e[1],s=e[2],r=i((n.x-o.x)*(t.y-o.y)-(n.y-o.y)*(t.x-o.x)),a=i((s.x-n.x)*(t.y-n.y)-(s.y-n.y)*(t.x-n.x)),h=i((o.x-s.x)*(t.y-s.y)-(o.y-s.y)*(t.x-s.x));return!(0!=r&&0!=a&&r!=a||0!=a&&0!=h&&a!=h||0!=r&&0!=h&&r!=h)},o.prototype._dataPointFromXY=function(t,e){var i,n=100,s=null,r=null,a=null,h=new u(t,e);if(this.style===o.STYLE.BAR||this.style===o.STYLE.BARCOLOR||this.style===o.STYLE.BARSIZE)for(i=this.dataPoints.length-1;i>=0;i--){s=this.dataPoints[i];var d=s.surfaces;if(d)for(var l=d.length-1;l>=0;l--){var c=d[l],p=c.corners,f=[p[0].screen,p[1].screen,p[2].screen],m=[p[2].screen,p[3].screen,p[0].screen];if(this._insideTriangle(h,f)||this._insideTriangle(h,m))return s}}else for(i=0;ib)&&n>b&&(a=b,r=s)}}return r},o.prototype._showTooltip=function(t){var e,i,o;this.tooltip?(e=this.tooltip.dom.content,i=this.tooltip.dom.line,o=this.tooltip.dom.dot):(e=document.createElement("div"),e.style.position="absolute",e.style.padding="10px",e.style.border="1px solid #4d4d4d",e.style.color="#1a1a1a",e.style.background="rgba(255,255,255,0.7)",e.style.borderRadius="2px",e.style.boxShadow="5px 5px 10px rgba(128,128,128,0.5)",i=document.createElement("div"),i.style.position="absolute",i.style.height="40px",i.style.width="0",i.style.borderLeft="1px solid #4d4d4d",o=document.createElement("div"),o.style.position="absolute",o.style.height="0",o.style.width="0",o.style.border="5px solid #4d4d4d",o.style.borderRadius="5px",this.tooltip={dataPoint:null,dom:{content:e,line:i,dot:o}}),this._hideTooltip(),this.tooltip.dataPoint=t,"function"==typeof this.showTooltip?e.innerHTML=this.showTooltip(t.point):e.innerHTML="
x:"+t.point.x+"
y:"+t.point.y+"
z:"+t.point.z+"
",e.style.left="0",e.style.top="0",this.frame.appendChild(e),this.frame.appendChild(i),this.frame.appendChild(o);var n=e.offsetWidth,s=e.offsetHeight,r=i.offsetHeight,a=o.offsetWidth,h=o.offsetHeight,d=t.screen.x-n/2;d=Math.min(Math.max(d,10),this.frame.clientWidth-10-n),i.style.left=t.screen.x+"px",i.style.top=t.screen.y-r+"px",e.style.left=d+"px",e.style.top=t.screen.y-r-s+"px",o.style.left=t.screen.x-a/2+"px",o.style.top=t.screen.y-h/2+"px"},o.prototype._hideTooltip=function(){if(this.tooltip){this.tooltip.dataPoint=null;for(var t in this.tooltip.dom)if(this.tooltip.dom.hasOwnProperty(t)){var e=this.tooltip.dom[t];e&&e.parentNode&&e.parentNode.removeChild(e)}}},t.exports=o},function(t,e,i){function o(t,e){this.x=void 0!==t?t:0,this.y=void 0!==e?e:0}t.exports=o},function(t,e,i){function o(t){return t?n(t):void 0}function n(t){for(var e in o.prototype)t[e]=o.prototype[e];return t}t.exports=o,o.prototype.on=o.prototype.addEventListener=function(t,e){return this._callbacks=this._callbacks||{},(this._callbacks[t]=this._callbacks[t]||[]).push(e),this},o.prototype.once=function(t,e){function i(){o.off(t,i),e.apply(this,arguments)}var o=this;return this._callbacks=this._callbacks||{},i.fn=e,this.on(t,i),this},o.prototype.off=o.prototype.removeListener=o.prototype.removeAllListeners=o.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 o,n=0;no;++o)i[o].apply(this,e)}return this},o.prototype.listeners=function(t){return this._callbacks=this._callbacks||{},this._callbacks[t]||[]},o.prototype.hasListeners=function(t){return!!this.listeners(t).length}},function(t,e,i){function o(t,e,i){this.x=void 0!==t?t:0,this.y=void 0!==e?e:0,this.z=void 0!==i?i:0}o.subtract=function(t,e){var i=new o;return i.x=t.x-e.x,i.y=t.y-e.y,i.z=t.z-e.z,i},o.add=function(t,e){var i=new o;return i.x=t.x+e.x,i.y=t.y+e.y,i.z=t.z+e.z,i},o.avg=function(t,e){return new o((t.x+e.x)/2,(t.y+e.y)/2,(t.z+e.z)/2)},o.crossProduct=function(t,e){var i=new o;return i.x=t.y*e.z-t.z*e.y,i.y=t.z*e.x-t.x*e.z,i.z=t.x*e.y-t.y*e.x,i},o.prototype.length=function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)},t.exports=o},function(t,e,i){function o(){this.armLocation=new n,this.armRotation={},this.armRotation.horizontal=0,this.armRotation.vertical=0,this.armLength=1.7,this.cameraLocation=new n,this.cameraRotation=new n(.5*Math.PI,0,0),this.calculateCameraOrientation()}var n=i(20);o.prototype.setArmLocation=function(t,e,i){this.armLocation.x=t,this.armLocation.y=e,this.armLocation.z=i,this.calculateCameraOrientation()},o.prototype.setArmRotation=function(t,e){void 0!==t&&(this.armRotation.horizontal=t),void 0!==e&&(this.armRotation.vertical=e,this.armRotation.vertical<0&&(this.armRotation.vertical=0),this.armRotation.vertical>.5*Math.PI&&(this.armRotation.vertical=.5*Math.PI)),(void 0!==t||void 0!==e)&&this.calculateCameraOrientation()},o.prototype.getArmRotation=function(){var t={};return t.horizontal=this.armRotation.horizontal,t.vertical=this.armRotation.vertical,t},o.prototype.setArmLength=function(t){void 0!==t&&(this.armLength=t,this.armLength<.71&&(this.armLength=.71),this.armLength>5&&(this.armLength=5),this.calculateCameraOrientation())},o.prototype.getArmLength=function(){return this.armLength},o.prototype.getCameraLocation=function(){return this.cameraLocation},o.prototype.getCameraRotation=function(){return this.cameraRotation},o.prototype.calculateCameraOrientation=function(){this.cameraLocation.x=this.armLocation.x-this.armLength*Math.sin(this.armRotation.horizontal)*Math.cos(this.armRotation.vertical),this.cameraLocation.y=this.armLocation.y-this.armLength*Math.cos(this.armRotation.horizontal)*Math.cos(this.armRotation.vertical),this.cameraLocation.z=this.armLocation.z+this.armLength*Math.sin(this.armRotation.vertical),this.cameraRotation.x=Math.PI/2-this.armRotation.vertical,this.cameraRotation.y=0,this.cameraRotation.z=-this.armRotation.horizontal},t.exports=o},function(t,e,i){function o(t,e,i){this.data=t,this.column=e,this.graph=i,this.index=void 0,this.value=void 0,this.values=i.getDistinctValues(t.get(),this.column),this.values.sort(function(t,e){return t>e?1:e>t?-1:0}),this.values.length>0&&this.selectValue(0),this.dataPoints=[],this.loaded=!1,this.onLoadCallback=void 0,i.animationPreload?(this.loaded=!1,this.loadInBackground()):this.loaded=!0}var n=i(16);o.prototype.isLoaded=function(){return this.loaded},o.prototype.getLoadedProgress=function(){for(var t=this.values.length,e=0;this.dataPoints[e];)e++; +return Math.round(e/t*100)},o.prototype.getLabel=function(){return this.graph.filterLabel},o.prototype.getColumn=function(){return this.column},o.prototype.getSelectedValue=function(){return void 0===this.index?void 0:this.values[this.index]},o.prototype.getValues=function(){return this.values},o.prototype.getValue=function(t){if(t>=this.values.length)throw"Error: index out of range";return this.values[t]},o.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 o=new n(this.data,{filter:function(t){return t[i.column]==i.value}}).get();e=this.graph._getDataPoints(o),this.dataPoints[t]=e}return e},o.prototype.setOnLoadCallback=function(t){this.onLoadCallback=t},o.prototype.selectValue=function(t){if(t>=this.values.length)throw"Error: index out of range";this.index=t,this.value=this.values[t]},o.prototype.loadInBackground=function(t){void 0===t&&(t=0);var e=this.graph.frame;if(t0&&(t--,this.setIndex(t))},o.prototype.next=function(){var t=this.getIndex();t0?this.setIndex(0):this.index=void 0},o.prototype.setIndex=function(t){if(!(to&&(o=0),o>this.values.length-1&&(o=this.values.length-1),o},o.prototype.indexToLeft=function(t){var e=parseFloat(this.frame.bar.style.width)-this.frame.slide.clientWidth-10,i=t/(this.values.length-1)*e,o=i+3;return o},o.prototype._onMouseMove=function(t){var e=t.clientX-this.startClientX,i=this.startSlideX+e,o=this.leftToIndex(i);this.setIndex(o),n.preventDefault()},o.prototype._onMouseUp=function(t){this.frame.style.cursor="auto",n.removeEventListener(document,"mousemove",this.onmousemove),n.removeEventListener(document,"mouseup",this.onmouseup),n.preventDefault()},t.exports=o},function(t,e,i){function o(t,e,i,o){this._start=0,this._end=0,this._step=1,this.prettyStep=!0,this.precision=5,this._current=0,this.setRange(t,e,i,o)}o.prototype.setRange=function(t,e,i,o){this._start=t?t:0,this._end=e?e:0,this.setStep(i,o)},o.prototype.setStep=function(t,e){void 0===t||0>=t||(void 0!==e&&(this.prettyStep=e),this.prettyStep===!0?this._step=o.calculatePrettyStep(t):this._step=t)},o.calculatePrettyStep=function(t){var e=function(t){return Math.log(t)/Math.LN10},i=Math.pow(10,Math.round(e(t))),o=2*Math.pow(10,Math.round(e(t/2))),n=5*Math.pow(10,Math.round(e(t/5))),s=i;return Math.abs(o-t)<=Math.abs(s-t)&&(s=o),Math.abs(n-t)<=Math.abs(s-t)&&(s=n),0>=s&&(s=1),s},o.prototype.getCurrent=function(){return parseFloat(this._current.toPrecision(this.precision))},o.prototype.getStep=function(){return this._step},o.prototype.start=function(){this._current=this._start-this._start%this._step},o.prototype.next=function(){this._current+=this._step},o.prototype.end=function(){return this._current>this._end},t.exports=o},function(t,e,i){function o(t,e,i,h){if(!(this instanceof o))throw new SyntaxError("Constructor must be called with the new operator");if(!(Array.isArray(i)||i instanceof s||i instanceof r)&&i instanceof Object){var u=h;h=i,i=u}var f=this;this.defaultOptions={start:null,end:null,autoResize:!0,orientation:{axis:"bottom",item:"bottom"},width:null,height:null,maxHeight:null,minHeight:null},this.options=n.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 f.timeAxis.step.scale},getStep:function(){return f.timeAxis.step.step},toScreen:f._toScreen.bind(f),toGlobalScreen:f._toGlobalScreen.bind(f),toTime:f._toTime.bind(f),toGlobalTime:f._toGlobalTime.bind(f)}},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.itemSet=new c(this.body),this.components.push(this.itemSet),this.itemsData=null,this.groupsData=null,this.on("tap",function(t){f.emit("click",f.getEventProperties(t))}),this.on("doubletap",function(t){f.emit("doubleClick",f.getEventProperties(t))}),this.dom.root.oncontextmenu=function(t){f.emit("contextmenu",f.getEventProperties(t))},this.configurator=new p(this,t,g),h&&this.setOptions(h),i&&this.setGroups(i),e?this.setItems(e):this._redraw()}var n=(i(19),i(3),i(7)),s=i(14),r=i(16),a=i(29),h=i(32),d=i(41),l=i(26),u=i(44),c=i(33),p=i(45),f=i(47)["default"],m=i(47).printStyle,v=i(48).allOptions,g=i(48).configureOptions;o.prototype=new h,o.prototype.redraw=function(){this.itemSet&&this.itemSet.markDirty({refreshItems:!0}),this._redraw()},o.prototype.setOptions=function(t){var e=f.validate(t,v);if(e===!0&&console.log("%cErrors have been found in the supplied options object.",m),h.prototype.setOptions.call(this,t),"type"in t&&t.type!==this.options.type){this.options.type=t.type;var i=this.itemsData;if(i){var o=this.getSelection();this.setItems(null),this.setItems(i),this.setSelection(o)}}},o.prototype.setItems=function(t){var e,i=null==this.itemsData;if(e=t?t instanceof s||t instanceof r?t:new s(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 o=this.getItemRange();var n=void 0!=this.options.start?this.options.start:o.min,a=void 0!=this.options.end?this.options.end:o.max;this.setWindow(n,a,{animation:!1})}else this.fit({animation:!1})},o.prototype.setGroups=function(t){var e;e=t?t instanceof s||t instanceof r?t:new s(t):null,this.groupsData=e,this.itemSet.setGroups(e)},o.prototype.setData=function(t){t&&t.groups&&this.setGroups(t.groups),t&&t.items&&this.setItems(t.items)},o.prototype.setSelection=function(t,e){this.itemSet&&this.itemSet.setSelection(t),e&&e.focus&&this.focus(t,e)},o.prototype.getSelection=function(){return this.itemSet&&this.itemSet.getSelection()||[]},o.prototype.focus=function(t,e){if(this.itemsData&&void 0!=t){var i=Array.isArray(t)?t:[t],o=this.itemsData.getDataSet().get(i,{type:{start:"Date",end:"Date"}}),n=null,s=null;if(o.forEach(function(t){var e=t.start.valueOf(),i="end"in t?t.end.valueOf():t.start.valueOf();(null===n||n>e)&&(n=e),(null===s||i>s)&&(s=i)}),null!==n&&null!==s){var r=(n+s)/2,a=Math.max(this.range.end-this.range.start,1.1*(s-n)),h=e&&void 0!==e.animation?e.animation:!0;this.range.setRange(r-a/2,r+a/2,h)}}},o.prototype.fit=function(t){var e=t&&void 0!==t.animation?t.animation:!0,i=this.getItemRange();this.range.setRange(i.min,i.max,e)},o.prototype.getItemRange=function(){var t=this,e=this.getDataRange(),i=e.min,o=e.max,s=null,r=null;if(null!=i&&null!=o){var a,h,d,l,u;!function(){var e=function(t){return n.convert(t.data.start,"Date").valueOf()},c=function(t){var e=void 0!=t.data.end?t.data.end:t.data.start;return n.convert(e,"Date").valueOf()};a=o-i,0>=a&&(a=10),h=a/t.props.center.width,n.forEach(t.itemSet.items,function(t){t.show();var n=e(t),a=c(t),d=new Date(n-(t.getWidthLeft()+10)*h),l=new Date(a+(t.getWidthRight()+10)*h);i>d&&(i=d,s=t),l>o&&(o=l,r=t)}.bind(t)),s&&r&&(d=s.getWidthLeft()+10,l=r.getWidthRight()+10,u=t.props.center.width-d-l,u>0&&(i=e(s)-d*a/u,o=c(r)+l*a/u))}()}return{min:null!=i?new Date(i):null,max:null!=o?new Date(o):null}},o.prototype.getDataRange=function(){var t=null,e=null,i=this.itemsData&&this.itemsData.getDataSet();return i&&i.forEach(function(i){var o=n.convert(i.start,"Date").valueOf(),s=n.convert(void 0!=i.end?i.end:i.start,"Date").valueOf();(null===t||t>o)&&(t=o),(null===e||s>e)&&(e=o)}),{min:null!=t?new Date(t):null,max:null!=e?new Date(e):null}},o.prototype.getEventProperties=function(t){var e=t.center?t.center.x:t.clientX,i=t.center?t.center.y:t.clientY,o=e-n.getAbsoluteLeft(this.dom.centerContainer),s=i-n.getAbsoluteTop(this.dom.centerContainer),r=this.itemSet.itemFromTarget(t),a=this.itemSet.groupFromTarget(t),h=u.customTimeFromTarget(t),d=this.itemSet.options.snap||null,l=this.body.util.getScale(),c=this.body.util.getStep(),p=this._toTime(o),f=d?d(p,l,c):p,m=n.getTarget(t),v=null;return null!=r?v="item":null!=h?v="custom-time":n.hasParent(m,this.timeAxis.dom.foreground)?v="axis":this.timeAxis2&&n.hasParent(m,this.timeAxis2.dom.foreground)?v="axis":n.hasParent(m,this.itemSet.dom.labelSet)?v="group-label":n.hasParent(m,this.currentTime.bar)?v="current-time":n.hasParent(m,this.dom.center)&&(v="background"),{event:t,item:r?r.id:null,group:a?a.groupId:null,what:v,pageX:t.srcEvent?t.srcEvent.pageX:t.pageX,pageY:t.srcEvent?t.srcEvent.pageY:t.pageY,x:o,y:s,time:p,snappedTime:f}},t.exports=o},function(t,e,i){function o(t,e){this.body=t,this.defaultOptions={showCurrentTime:!0,locales:a,locale:"en"},this.options=n.extend({},this.defaultOptions),this.offset=0,this._create(),this.setOptions(e)}var n=i(7),s=i(27),r=i(8),a=i(28);o.prototype=new s,o.prototype._create=function(){var t=document.createElement("div");t.className="vis-current-time",t.style.position="absolute",t.style.top="0px",t.style.height="100%",this.bar=t},o.prototype.destroy=function(){this.options.showCurrentTime=!1,this.redraw(),this.body=null},o.prototype.setOptions=function(t){t&&n.selectiveExtend(["showCurrentTime","locale","locales"],this.options,t)},o.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),o=this.options.locales[this.options.locale];o||(this.warned||(console.log("WARNING: options.locales['"+this.options.locale+"'] not found. See http://visjs.org/docs/timeline.html#Localization"),this.warned=!0),o=this.options.locales.en);var n=o.current+" "+o.time+": "+r(e).format("dddd, MMMM Do YYYY, H:mm:ss");n=n.charAt(0).toUpperCase()+n.substring(1),this.bar.style.left=i+"px",this.bar.title=n}else this.bar.parentNode&&this.bar.parentNode.removeChild(this.bar),this.stop();return!1},o.prototype.start=function(){function t(){e.stop();var i=e.body.range.conversion(e.body.domProps.center.width).scale,o=1/i/10;30>o&&(o=30),o>1e3&&(o=1e3),e.redraw(),e.currentTimeTimer=setTimeout(t,o)}var e=this;t()},o.prototype.stop=function(){void 0!==this.currentTimeTimer&&(clearTimeout(this.currentTimeTimer),delete this.currentTimeTimer)},o.prototype.setCurrentTime=function(t){var e=n.convert(t,"Date").valueOf(),i=(new Date).valueOf();this.offset=e-i,this.redraw()},o.prototype.getCurrentTime=function(){return new Date((new Date).valueOf()+this.offset)},t.exports=o},function(t,e,i){function o(t,e){this.options=null,this.props=null}o.prototype.setOptions=function(t){t&&util.extend(this.options,t)},o.prototype.redraw=function(){return!1},o.prototype.destroy=function(){},o.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=o},function(t,e,i){e.en={current:"current",time:"time"},e.en_EN=e.en,e.en_US=e.en,e.nl={current:"huidige",time:"tijd"},e.nl_NL=e.nl,e.nl_BE=e.nl},function(t,e,i){function o(t,e){var i=a().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.animationTimer=null,this.body.emitter.on("panstart",this._onDragStart.bind(this)),this.body.emitter.on("panmove",this._onDrag.bind(this)),this.body.emitter.on("panend",this._onDragEnd.bind(this)),this.body.emitter.on("mousewheel",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 n(t){if("horizontal"!=t&&"vertical"!=t)throw new TypeError('Unknown direction "'+t+'". Choose "horizontal" or "vertical".')}function s(t,e){return{x:t.x-r.getAbsoluteLeft(e),y:t.y-r.getAbsoluteTop(e)}}var r=i(7),a=(i(30),i(8)),h=i(27),d=i(31);o.prototype=new h,o.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)}},o.prototype.setRange=function(t,e,i,o){o!==!0&&(o=!1);var n=void 0!=t?r.convert(t,"Date").valueOf():null,s=void 0!=e?r.convert(e,"Date").valueOf():null;if(this._cancelAnimation(),i){var a=this,h=this.start,l=this.end,u="object"==typeof i&&"duration"in i?i.duration:500,c="object"==typeof i&&"easingFunction"in i?i.easingFunction:"easeInOutQuad",p=r.easingFunctions[c];if(!p)throw new Error("Unknown easing function "+JSON.stringify(c)+". Choose from: "+Object.keys(r.easingFunctions).join(", "));var f=(new Date).valueOf(),m=!1,v=function b(){if(!a.props.touch.dragging){var t=(new Date).valueOf(),e=t-f,i=p(e/u),r=e>u,c=r||null===n?n:h+(n-h)*i,v=r||null===s?s:l+(s-l)*i;g=a._applyRange(c,v),d.updateHiddenDates(a.body,a.options.hiddenDates),m=m||g,g&&a.body.emitter.emit("rangechange",{start:new Date(a.start),end:new Date(a.end),byUser:o}),r?m&&a.body.emitter.emit("rangechanged",{start:new Date(a.start),end:new Date(a.end),byUser:o}):a.animationTimer=setTimeout(b,20)}};return v()}var g=this._applyRange(n,s);if(d.updateHiddenDates(this.body,this.options.hiddenDates),g){var y={start:new Date(this.start),end:new Date(this.end),byUser:o};this.body.emitter.emit("rangechange",y),this.body.emitter.emit("rangechanged",y)}},o.prototype._cancelAnimation=function(){this.animationTimer&&(clearTimeout(this.animationTimer),this.animationTimer=null)},o.prototype._applyRange=function(t,e){var i,o=null!=t?r.convert(t,"Date").valueOf():this.start,n=null!=e?r.convert(e,"Date").valueOf():this.end,s=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(o)||null===o)throw new Error('Invalid start "'+t+'"');if(isNaN(n)||null===n)throw new Error('Invalid end "'+e+'"');if(o>n&&(n=o),null!==a&&a>o&&(i=a-o,o+=i,n+=i,null!=s&&n>s&&(n=s)),null!==s&&n>s&&(i=n-s,o-=i,n-=i,null!=a&&a>o&&(o=a)),null!==this.options.zoomMin){var h=parseFloat(this.options.zoomMin);0>h&&(h=0),h>n-o&&(this.end-this.start===h&&o>this.start&&nd&&(d=0),n-o>d&&(this.end-this.start===d&&othis.end?(o=this.start,n=this.end):(i=n-o-d,o+=i/2,n-=i/2))}var l=this.start!=o||this.end!=n;return o>=this.start&&o<=this.end||n>=this.start&&n<=this.end||this.start>=o&&this.start<=n||this.end>=o&&this.end<=n||this.body.emitter.emit("checkRangedItems"),this.start=o,this.end=n,l},o.prototype.getRange=function(){return{start:this.start,end:this.end}},o.prototype.conversion=function(t,e){return o.conversion(this.start,this.end,t,e)},o.conversion=function(t,e,i,o){return void 0===o&&(o=0),0!=i&&e-t!=0?{offset:t,scale:i/(e-t-o)}:{offset:0,scale:1}},o.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"))},o.prototype._onDrag=function(t){if(this.options.moveable&&this.props.touch.allowDragging){var e=this.options.direction;n(e);var i="horizontal"==e?t.deltaX:t.deltaY;i-=this.deltaDifference;var o=this.props.touch.end-this.props.touch.start,s=d.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end);o-=s;var r="horizontal"==e?this.body.domProps.center.width:this.body.domProps.center.height,a=-i/r*o,h=this.props.touch.start+a,l=this.props.touch.end+a,u=d.snapAwayFromHidden(this.body.hiddenDates,h,this.previousDelta-i,!0),c=d.snapAwayFromHidden(this.body.hiddenDates,l,this.previousDelta-i,!0);if(u!=h||c!=l)return this.deltaDifference+=i,this.props.touch.start=u,this.props.touch.end=c,void this._onDrag(t);this.previousDelta=i,this._applyRange(h,l),this.body.emitter.emit("rangechange",{start:new Date(this.start),end:new Date(this.end),byUser:!0})}},o.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}))},o.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 o=s({x:t.clientX,y:t.clientY},this.body.dom.center),n=this._pointerToDate(o);this.zoom(i,n,e)}t.preventDefault()}},o.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},o.prototype._onPinch=function(t){if(this.options.zoomable&&this.options.moveable){this.props.touch.allowDragging=!1,this.props.touch.center||(this.props.touch.center=s(t.center,this.body.dom.center));var e=1/(t.scale+this.scaleOffset),i=this._pointerToDate(this.props.touch.center),o=d.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end),n=d.getHiddenDurationBefore(this.body.hiddenDates,this,i),r=o-n,a=i-n+(this.props.touch.start-(i-n))*e,h=i+r+(this.props.touch.end-(i+r))*e;this.startToFront=0>=1-e,this.endToFront=0>=e-1;var l=d.snapAwayFromHidden(this.body.hiddenDates,a,1-e,!0),u=d.snapAwayFromHidden(this.body.hiddenDates,h,e-1,!0);(l!=a||u!=h)&&(this.props.touch.start=l,this.props.touch.end=u,this.scaleOffset=1-t.scale,a=l,h=u),this.setRange(a,h,!1,!0),this.startToFront=!1,this.endToFront=!0}},o.prototype._pointerToDate=function(t){var e,i=this.options.direction;if(n(i),"horizontal"==i)return this.body.util.toTime(t.x).valueOf();var o=this.body.domProps.center.height;return e=this.conversion(o),t.y/e.scale+e.offset},o.prototype.zoom=function(t,e,i){null==e&&(e=(this.start+this.end)/2);var o=d.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end),n=d.getHiddenDurationBefore(this.body.hiddenDates,this,e),s=o-n,r=e-n+(this.start-(e-n))*t,a=e+s+(this.end-(e+s))*t;this.startToFront=i>0?!1:!0,this.endToFront=-i>0?!1:!0;var h=d.snapAwayFromHidden(this.body.hiddenDates,r,i,!0),l=d.snapAwayFromHidden(this.body.hiddenDates,a,-i,!0);(h!=r||l!=a)&&(r=h,a=l),this.setRange(r,a,!1,!0),this.startToFront=!1,this.endToFront=!0},o.prototype.move=function(t){var e=this.end-this.start,i=this.start+e*t,o=this.end+e*t;this.start=i,this.end=o},o.prototype.moveTo=function(t){var e=(this.start+this.end)/2,i=e-t,o=this.start-i,n=this.end-i;this.setRange(o,n)},t.exports=o},function(t,e,i){i(3);e.onTouch=function(t,e){e.inputHandler=function(t){t.isFirst&&!o&&(e(t),o=!0,setTimeout(function(){o=!1},0))},t.on("hammer.input",e.inputHandler)};var o=!1;e.onRelease=function(t,e){return e.inputHandler=function(t){t.isFinal&&!n&&(e(t),n=!0,setTimeout(function(){n=!1},0))},t.on("hammer.input",e.inputHandler)};var n=!1;e.offTouch=function(t,e){t.off("hammer.input",e.inputHandler)},e.offRelease=e.offTouch},function(t,e,i){var o=i(8);e.convertHiddenOptions=function(t,e){if(t.hiddenDates=[],e&&1==Array.isArray(e)){for(var i=0;i=4*a){var c=0,p=s.clone();switch(i[h].repeat){case"daily":d.day()!=l.day()&&(c=1),d.dayOfYear(n.dayOfYear()),d.year(n.year()),d.subtract(7,"days"),l.dayOfYear(n.dayOfYear()),l.year(n.year()),l.subtract(7-c,"days"),p.add(1,"weeks");break;case"weekly":var f=l.diff(d,"days"),m=d.day();d.date(n.date()),d.month(n.month()),d.year(n.year()),l=d.clone(),d.day(m),l.day(m),l.add(f,"days"),d.subtract(1,"weeks"),l.subtract(1,"weeks"),p.add(1,"weeks");break;case"monthly":d.month()!=l.month()&&(c=1),d.month(n.month()),d.year(n.year()),d.subtract(1,"months"),l.month(n.month()),l.year(n.year()),l.subtract(1,"months"),l.add(c,"months"),p.add(1,"months");break;case"yearly":d.year()!=l.year()&&(c=1),d.year(n.year()),d.subtract(1,"years"),l.year(n.year()),l.subtract(1,"years"),l.add(c,"years"),p.add(1,"years");break;default:return void console.log("Wrong repeat format, allowed are: daily, weekly, monthly, yearly. Given:",i[h].repeat)}for(;p>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 v=e.isHidden(t.range.start,t.hiddenDates),g=e.isHidden(t.range.end,t.hiddenDates),y=t.range.start,b=t.range.end;1==v.hidden&&(y=1==t.range.startToFront?v.startDate-1:v.endDate+1),1==g.hidden&&(b=1==t.range.endToFront?g.startDate-1:g.endDate+1),(1==v.hidden||1==g.hidden)&&t.range._applyRange(y,b)}},e.removeDuplicates=function(t){for(var e=t.hiddenDates,i=[],o=0;o=e[o].start&&e[n].end<=e[o].end?e[n].remove=!0:e[n].start>=e[o].start&&e[n].start<=e[o].end?(e[o].end=e[n].end,e[n].remove=!0):e[n].end>=e[o].start&&e[n].end<=e[o].end&&(e[o].start=e[n].start,e[n].remove=!0));for(var o=0;o=r&&a>n){i=!0;break}}if(1==i&&n=e&&i>r&&(o+=r-s)}return o},e.correctTimeForHidden=function(t,i,n){return n=o(n).toDate().valueOf(),n-=e.getHiddenDurationBefore(t,i,n)},e.getHiddenDurationBefore=function(t,e,i){var n=0;i=o(i).toDate().valueOf();for(var s=0;s=e.start&&a=a&&(n+=a-r)}return n},e.getAccumulatedHiddenDuration=function(t,e,i){for(var o=0,n=0,s=e.start,r=0;r=e.start&&h=i)break;o+=h-a}}return o},e.snapAwayFromHidden=function(t,i,o,n){var s=e.isHidden(i,t);return 1==s.hidden?0>o?1==n?s.startDate-(s.endDate-i)-1:s.startDate-1:1==n?s.endDate+(i-s.startDate)+1:s.endDate+1:i},e.isHidden=function(t,e){for(var i=0;i=o&&n>t)return{hidden:!0,startDate:o,endDate:n}}return{hidden:!1,startDate:o,endDate:n}}},function(t,e,i){function o(){}var n=i(19),s=i(3),r=i(30),a=i(7),h=(i(14),i(16),i(29),i(33),i(41)),d=i(42),l=i(31),u=i(44);n(o.prototype),o.prototype._create=function(t){function e(t){i.isActive()&&i.emit("mousewheel",t)}this.dom={},this.dom.root=document.createElement("div"),this.dom.background=document.createElement("div"),this.dom.backgroundVertical=document.createElement("div"),this.dom.backgroundHorizontal=document.createElement("div"),this.dom.centerContainer=document.createElement("div"),this.dom.leftContainer=document.createElement("div"),this.dom.rightContainer=document.createElement("div"),this.dom.center=document.createElement("div"),this.dom.left=document.createElement("div"),this.dom.right=document.createElement("div"),this.dom.top=document.createElement("div"),this.dom.bottom=document.createElement("div"),this.dom.shadowTop=document.createElement("div"),this.dom.shadowBottom=document.createElement("div"),this.dom.shadowTopLeft=document.createElement("div"),this.dom.shadowBottomLeft=document.createElement("div"),this.dom.shadowTopRight=document.createElement("div"),this.dom.shadowBottomRight=document.createElement("div"),this.dom.root.className="vis-timeline",this.dom.background.className="vis-panel vis-background",this.dom.backgroundVertical.className="vis-panel vis-background vis-vertical",this.dom.backgroundHorizontal.className="vis-panel vis-background vis-horizontal",this.dom.centerContainer.className="vis-panel vis-center",this.dom.leftContainer.className="vis-panel vis-left",this.dom.rightContainer.className="vis-panel vis-right",this.dom.top.className="vis-panel vis-top",this.dom.bottom.className="vis-panel vis-bottom",this.dom.left.className="vis-content",this.dom.center.className="vis-content",this.dom.right.className="vis-content",this.dom.shadowTop.className="vis-shadow vis-top",this.dom.shadowBottom.className="vis-shadow vis-bottom",this.dom.shadowTopLeft.className="vis-shadow vis-top",this.dom.shadowBottomLeft.className="vis-shadow vis-bottom",this.dom.shadowTopRight.className="vis-shadow vis-top",this.dom.shadowBottomRight.className="vis-shadow vis-bottom",this.dom.root.appendChild(this.dom.background),this.dom.root.appendChild(this.dom.backgroundVertical),this.dom.root.appendChild(this.dom.backgroundHorizontal),this.dom.root.appendChild(this.dom.centerContainer),this.dom.root.appendChild(this.dom.leftContainer),this.dom.root.appendChild(this.dom.rightContainer),this.dom.root.appendChild(this.dom.top),this.dom.root.appendChild(this.dom.bottom),this.dom.centerContainer.appendChild(this.dom.center), +this.dom.leftContainer.appendChild(this.dom.left),this.dom.rightContainer.appendChild(this.dom.right),this.dom.centerContainer.appendChild(this.dom.shadowTop),this.dom.centerContainer.appendChild(this.dom.shadowBottom),this.dom.leftContainer.appendChild(this.dom.shadowTopLeft),this.dom.leftContainer.appendChild(this.dom.shadowBottomLeft),this.dom.rightContainer.appendChild(this.dom.shadowTopRight),this.dom.rightContainer.appendChild(this.dom.shadowBottomRight),this.on("rangechange",this.redraw.bind(this)),this.on("touch",this._onTouch.bind(this)),this.on("pan",this._onDrag.bind(this));var i=this;this.on("change",function(t){t&&1==t.queue?i._redrawTimer||(i._redrawTimer=setTimeout(function(){i._redrawTimer=null,i._redraw()},0)):i._redraw()}),this.hammer=new s(this.dom.root),this.hammer.get("pinch").set({enable:!0}),this.listeners={};var o=["tap","doubletap","press","pinch","pan","panstart","panmove","panend"];if(o.forEach(function(t){var e=function(e){i.isActive()&&i.emit(t,e)};i.hammer.on(t,e),i.listeners[t]=e}),r.onTouch(this.hammer,function(t){i.emit("touch",t)}.bind(this)),r.onRelease(this.hammer,function(t){i.emit("release",t)}.bind(this)),this.dom.root.addEventListener("mousewheel",e),this.dom.root.addEventListener("DOMMouseScroll",e),this.props={root:{},background:{},centerContainer:{},leftContainer:{},rightContainer:{},center:{},left:{},right:{},top:{},bottom:{},border:{},scrollTop:0,scrollTopMin:0},this.customTimes=[],this.touch={},this.redrawCount=0,!t)throw new Error("No container provided");t.appendChild(this.dom.root)},o.prototype.setOptions=function(t){if(t){var e=["width","height","minHeight","maxHeight","autoResize","start","end","clickToUse","dataAttributes","hiddenDates"];if(a.selectiveExtend(e,this.options,t),"orientation"in t&&("string"==typeof t.orientation?this.options.orientation={item:t.orientation,axis:t.orientation}:"object"==typeof t.orientation&&("item"in t.orientation&&(this.options.orientation.item=t.orientation.item),"axis"in t.orientation&&(this.options.orientation.axis=t.orientation.axis))),"both"===this.options.orientation.axis){if(!this.timeAxis2){var i=this.timeAxis2=new h(this.body);i.setOptions=function(t){var e=t?a.extend({},t):{};e.orientation="top",h.prototype.setOptions.call(i,e)},this.components.push(i)}}else if(this.timeAxis2){var o=this.components.indexOf(this.timeAxis2);-1!==o&&this.components.splice(o,1),this.timeAxis2.destroy(),this.timeAxis2=null}if("hiddenDates"in this.options&&l.convertHiddenOptions(this.body,this.options.hiddenDates),"clickToUse"in t&&(t.clickToUse?this.activator||(this.activator=new d(this.dom.root)):this.activator&&(this.activator.destroy(),delete this.activator)),"showCustomTime"in t)throw new Error("Option `showCustomTime` is deprecated. Create a custom time bar via timeline.addCustomTime(time [, id])");this._initAutoResize()}if(this.components.forEach(function(e){return e.setOptions(t)}),this.configurator){this.configurator.setOptions(t.configure);var n=a.deepExtend({},this.options);this.components.forEach(function(t){a.deepExtend(n,t.options)}),this.configurator.setModuleOptions({global:n})}this._redraw()},o.prototype.isActive=function(){return!this.activator||this.activator.active},o.prototype.destroy=function(){this.setItems(null),this.setGroups(null),this.off(),this._stopAutoResize(),this.dom.root.parentNode&&this.dom.root.parentNode.removeChild(this.dom.root),this.dom=null,this.activator&&(this.activator.destroy(),delete this.activator);for(var t in this.listeners)this.listeners.hasOwnProperty(t)&&delete this.listeners[t];this.listeners=null,this.hammer=null,this.components.forEach(function(t){return t.destroy()}),this.body=null},o.prototype.setCustomTime=function(t,e){var i=this.customTimes.filter(function(t){return e===t.options.id});if(0===i.length)throw new Error("No custom time bar found with id "+JSON.stringify(e));i.length>0&&i[0].setCustomTime(t)},o.prototype.getCustomTime=function(t){var e=this.customTimes.filter(function(e){return e.options.id===t});if(0===e.length)throw new Error("No custom time bar found with id "+JSON.stringify(t));return e[0].getCustomTime()},o.prototype.addCustomTime=function(t,e){var i=void 0!==t?a.convert(t,"Date").valueOf():new Date,o=this.customTimes.some(function(t){return t.options.id===e});if(o)throw new Error("A custom time with id "+JSON.stringify(e)+" already exists");var n=new u(this.body,{time:i,id:e});return this.customTimes.push(n),this.components.push(n),this.redraw(),e},o.prototype.removeCustomTime=function(t){var e=this.customTimes.filter(function(e){return e.options.id===t});if(0===e.length)throw new Error("No custom time bar found with id "+JSON.stringify(t));e.forEach(function(t){this.customTimes.splice(this.customTimes.indexOf(t),1),this.components.splice(this.components.indexOf(t),1),t.destroy()}.bind(this))},o.prototype.getVisibleItems=function(){return this.itemSet&&this.itemSet.getVisibleItems()||[]},o.prototype.fit=function(t){var e=this.getDataRange();if(null!==e.start||null!==e.end){var i=e.max-e.min,o=new Date(e.min.valueOf()-.01*i),n=new Date(e.max.valueOf()+.01*i),s=t&&void 0!==t.animation?t.animation:!0;this.range.setRange(o,n,s)}},o.prototype.getDataRange=function(){var t=this.getItemRange(),e=t.min,i=t.max;if(null!=e&&null!=i){var o=i.valueOf()-e.valueOf();0>=o&&(o=864e5),e=new Date(e.valueOf()-.01*o),i=new Date(i.valueOf()+.01*o)}return{start:null,end:null}},o.prototype.setWindow=function(t,e,i){var o;if(1==arguments.length){var n=arguments[0];o=void 0!==n.animation?n.animation:!0,this.range.setRange(n.start,n.end,o)}else o=i&&void 0!==i.animation?i.animation:!0,this.range.setRange(t,e,o)},o.prototype.moveTo=function(t,e){var i=this.range.end-this.range.start,o=a.convert(t,"Date").valueOf(),n=o-i/2,s=o+i/2,r=e&&void 0!==e.animation?e.animation:!0;this.range.setRange(n,s,r)},o.prototype.getWindow=function(){var t=this.range.getRange();return{start:new Date(t.start),end:new Date(t.end)}},o.prototype.redraw=function(){this._redraw()},o.prototype._redraw=function(){var t=!1,e=this.options,i=this.props,o=this.dom;if(o){l.updateHiddenDates(this.body,this.options.hiddenDates),"top"==e.orientation?(a.addClassName(o.root,"vis-top"),a.removeClassName(o.root,"vis-bottom")):(a.removeClassName(o.root,"vis-top"),a.addClassName(o.root,"vis-bottom")),o.root.style.maxHeight=a.option.asSize(e.maxHeight,""),o.root.style.minHeight=a.option.asSize(e.minHeight,""),o.root.style.width=a.option.asSize(e.width,""),i.border.left=(o.centerContainer.offsetWidth-o.centerContainer.clientWidth)/2,i.border.right=i.border.left,i.border.top=(o.centerContainer.offsetHeight-o.centerContainer.clientHeight)/2,i.border.bottom=i.border.top;var n=o.root.offsetHeight-o.root.clientHeight,s=o.root.offsetWidth-o.root.clientWidth;0===o.centerContainer.clientHeight&&(i.border.left=i.border.top,i.border.right=i.border.left),0===o.root.clientHeight&&(s=n),i.center.height=o.center.offsetHeight,i.left.height=o.left.offsetHeight,i.right.height=o.right.offsetHeight,i.top.height=o.top.clientHeight||-i.border.top,i.bottom.height=o.bottom.clientHeight||-i.border.bottom;var r=Math.max(i.left.height,i.center.height,i.right.height),h=i.top.height+r+i.bottom.height+n+i.border.top+i.border.bottom;o.root.style.height=a.option.asSize(e.height,h+"px"),i.root.height=o.root.offsetHeight,i.background.height=i.root.height-n;var d=i.root.height-i.top.height-i.bottom.height-n;i.centerContainer.height=d,i.leftContainer.height=d,i.rightContainer.height=i.leftContainer.height,i.root.width=o.root.offsetWidth,i.background.width=i.root.width-s,i.left.width=o.leftContainer.clientWidth||-i.border.left,i.leftContainer.width=i.left.width,i.right.width=o.rightContainer.clientWidth||-i.border.right,i.rightContainer.width=i.right.width;var u=i.root.width-i.left.width-i.right.width-s;i.center.width=u,i.centerContainer.width=u,i.top.width=u,i.bottom.width=u,o.background.style.height=i.background.height+"px",o.backgroundVertical.style.height=i.background.height+"px",o.backgroundHorizontal.style.height=i.centerContainer.height+"px",o.centerContainer.style.height=i.centerContainer.height+"px",o.leftContainer.style.height=i.leftContainer.height+"px",o.rightContainer.style.height=i.rightContainer.height+"px",o.background.style.width=i.background.width+"px",o.backgroundVertical.style.width=i.centerContainer.width+"px",o.backgroundHorizontal.style.width=i.background.width+"px",o.centerContainer.style.width=i.center.width+"px",o.top.style.width=i.top.width+"px",o.bottom.style.width=i.bottom.width+"px",o.background.style.left="0",o.background.style.top="0",o.backgroundVertical.style.left=i.left.width+i.border.left+"px",o.backgroundVertical.style.top="0",o.backgroundHorizontal.style.left="0",o.backgroundHorizontal.style.top=i.top.height+"px",o.centerContainer.style.left=i.left.width+"px",o.centerContainer.style.top=i.top.height+"px",o.leftContainer.style.left="0",o.leftContainer.style.top=i.top.height+"px",o.rightContainer.style.left=i.left.width+i.center.width+"px",o.rightContainer.style.top=i.top.height+"px",o.top.style.left=i.left.width+"px",o.top.style.top="0",o.bottom.style.left=i.left.width+"px",o.bottom.style.top=i.top.height+i.centerContainer.height+"px",this._updateScrollTop();var c=this.props.scrollTop;"top"!=e.orientation.item&&(c+=Math.max(this.props.centerContainer.height-this.props.center.height-this.props.border.top-this.props.border.bottom,0)),o.center.style.left="0",o.center.style.top=c+"px",o.left.style.left="0",o.left.style.top=c+"px",o.right.style.left="0",o.right.style.top=c+"px";var p=0==this.props.scrollTop?"hidden":"",f=this.props.scrollTop==this.props.scrollTopMin?"hidden":"";if(o.shadowTop.style.visibility=p,o.shadowBottom.style.visibility=f,o.shadowTopLeft.style.visibility=p,o.shadowBottomLeft.style.visibility=f,o.shadowTopRight.style.visibility=p,o.shadowBottomRight.style.visibility=f,this.components.forEach(function(e){t=e.redraw()||t}),t){var m=3;this.redrawCount0&&(this.props.scrollTop=0),this.props.scrollTope;e++)o=this.selection[e],n=this.items[o],n&&n.unselect();for(this.selection=[],e=0,i=t.length;i>e;e++)o=t[e],n=this.items[o],n&&(this.selection.push(o),n.select())},o.prototype.getSelection=function(){return this.selection.concat([])},o.prototype.getVisibleItems=function(){var t=this.body.range.getRange(),e=this.body.util.toScreen(t.start),i=this.body.util.toScreen(t.end),o=[];for(var n in this.groups)if(this.groups.hasOwnProperty(n))for(var s=this.groups[n],r=s.visibleItems,a=0;ae&&o.push(h.id)}return o},o.prototype._deselect=function(t){for(var e=this.selection,i=0,o=e.length;o>i;i++)if(e[i]==t){e.splice(i,1);break}},o.prototype.redraw=function(){var t=this.options.margin,e=this.body.range,i=s.option.asSize,o=this.options,n=o.orientation.item,r=!1,a=this.dom.frame,h=o.editable.updateTime||o.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="vis-itemset"+(h?" vis-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 u=this.stackDirty,c=this._firstGroup(),p={item:t.item,axis:t.axis},f={item:t.item,axis:t.item.vertical/2},m=0,v=t.axis+t.item.vertical;return this.groups[g].redraw(e,f,u),s.forEach(this.groups,function(t){var i=t==c?p:f,o=t.redraw(e,i,u);r=o||r,m+=t.height}),m=Math.max(m,v),this.stackDirty=!1,a.style.height=i(m),this.props.width=a.offsetWidth,this.props.height=m,this.dom.axis.style.top=i("top"==n?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},o.prototype._firstGroup=function(){var t="top"==this.options.orientation.item?0:this.groupIds.length-1,e=this.groupIds[t],i=this.groups[e]||this.groups[v];return i||null},o.prototype._updateUngrouped=function(){var t,e,i=this.groups[v];this.groups[g];if(this.groupsData){if(i){i.hide(),delete this.groups[v];for(e in this.items)if(this.items.hasOwnProperty(e)){t=this.items[e],t.parent&&t.parent.remove(t);var o=this._getGroupId(t.data),n=this.groups[o];n&&n.add(t)||t.hide()}}}else if(!i){var s=null,r=null;i=new l(s,r,this),this.groups[v]=i;for(e in this.items)this.items.hasOwnProperty(e)&&(t=this.items[e],i.add(t));i.show()}},o.prototype.getLabelSet=function(){return this.dom.labelSet},o.prototype.setItems=function(t){var e,i=this,o=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(o&&(s.forEach(this.itemListeners,function(t,e){o.off(e,t)}),e=o.getIds(),this._onRemove(e)),this.itemsData){var n=this.id;s.forEach(this.itemListeners,function(t,e){i.itemsData.on(e,t,n)}),e=this.itemsData.getIds(),this._onAdd(e),this._updateUngrouped()}},o.prototype.getItems=function(){return this.itemsData},o.prototype.setGroups=function(t){var e,i=this;if(this.groupsData&&(s.forEach(this.groupListeners,function(t,e){i.groupsData.off(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 o=this.id;s.forEach(this.groupListeners,function(t,e){i.groupsData.on(e,t,o)}),e=this.groupsData.getIds(),this._onAddGroups(e)}this._updateUngrouped(),this._order(),this.body.emitter.emit("change",{queue:!0})},o.prototype.getGroups=function(){return this.groupsData},o.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)})},o.prototype._getType=function(t){return t.type||this.options.type||(t.end?"range":"box")},o.prototype._getGroupId=function(t){var e=this._getType(t);return"background"==e&&void 0==t.group?g:this.groupsData?t.group:v},o.prototype._onUpdate=function(t){var e=this;t.forEach(function(t){var i,n=e.itemsData.get(t,e.itemOptions),s=e.items[t],r=e._getType(n),a=o.types[r];if(s&&(a&&s instanceof a?e._updateItem(s,n):(i=s.selected,e._removeItem(s),s=null)),!s){if(!a)throw"rangeoverflow"==r?new TypeError('Item type "rangeoverflow" is deprecated. Use css styling instead: .vis-item.vis-range .vis-item-content {overflow: visible;}'):new TypeError('Unknown item type "'+r+'"');s=new a(n,e.conversion,e.options),s.id=t,e._addItem(s),i&&(this.selection.push(t),s.select())}}.bind(this)),this._order(),this.stackDirty=!0,this.body.emitter.emit("change",{queue:!0})},o.prototype._onAdd=o.prototype._onUpdate,o.prototype._onRemove=function(t){var e=0,i=this;t.forEach(function(t){var o=i.items[t];o&&(e++,i._removeItem(o))}),e&&(this._order(),this.stackDirty=!0,this.body.emitter.emit("change",{queue:!0}))},o.prototype._order=function(){s.forEach(this.groups,function(t){t.order()})},o.prototype._onUpdateGroups=function(t){this._onAddGroups(t)},o.prototype._onAddGroups=function(t){var e=this;t.forEach(function(t){var i=e.groupsData.get(t),o=e.groups[t];if(o)o.setData(i);else{if(t==v||t==g)throw new Error("Illegal group id. "+t+" is a reserved id.");var n=Object.create(e.options);s.extend(n,{height:null}),o=new l(t,i,e),e.groups[t]=o;for(var r in e.items)if(e.items.hasOwnProperty(r)){var a=e.items[r];a.data.group==t&&o.add(a)}o.order(),o.show()}}),this.body.emitter.emit("change",{queue:!0})},o.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})},o.prototype._orderGroups=function(){if(this.groupsData){var t=this.groupsData.getIds({order:this.options.groupOrder}),e=!s.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},o.prototype._addItem=function(t){this.items[t.id]=t;var e=this._getGroupId(t.data),i=this.groups[e];i&&i.add(t)},o.prototype._updateItem=function(t,e){var i=t.data.group,o=t.data.subgroup;if(t.setData(e),i!=t.data.group||o!=t.data.subgroup){var n=this.groups[i];n&&n.remove(t);var s=this._getGroupId(t.data),r=this.groups[s];r&&r.add(t)}},o.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)},o.prototype._constructByEndArray=function(t){for(var e=[],i=0;i0||o.length>0)&&this.body.emitter.emit("select",{items:r})}},o.prototype._onAddItem=function(t){if(this.options.selectable&&this.options.editable.add){var e=this,i=this.options.snap||null,o=this.itemFromTarget(t);if(t.stopPropagation(),o){var n=e.itemsData.get(o.id);this.options.onUpdate(n,function(t){t&&e.itemsData.getDataSet().update(t)})}else{var r=s.getAbsoluteLeft(this.dom.frame),a=t.center.x-r,h=this.body.util.toTime(a),d=this.body.util.getScale(),l=this.body.util.getStep(),u={start:i?i(h,d,l):h,content:"new item"};if("range"===this.options.type){var c=this.body.util.toTime(a+this.props.width/5);u.end=i?i(c,d,l):c}u[this.itemsData._fieldId]=s.randomUUID();var p=this.groupFromTarget(t);p&&(u.group=p.groupId),this.options.onAdd(u,function(t){t&&e.itemsData.getDataSet().add(t)})}}},o.prototype._onMultiSelectItem=function(t){if(this.options.selectable){var e=this.itemFromTarget(t);if(e){var i=this.options.multiselect?this.getSelection():[],n=t.srcEvent&&t.srcEvent.shiftKey||!1;if(n&&this.options.multiselect){i.push(e.id);var s=o._getItemRange(this.itemsData.get(i,this.itemOptions));i=[];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>=s.min&&d<=s.max&&!(a instanceof m)&&i.push(a.id)}}else{var l=i.indexOf(e.id);-1==l?i.push(e.id):i.splice(l,1)}this.setSelection(i),this.body.emitter.emit("select",{items:this.getSelection()})}}},o._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}},o.prototype.itemFromTarget=function(t){for(var e=t.target;e;){if(e.hasOwnProperty("timeline-item"))return e["timeline-item"];e=e.parentNode}return null},o.prototype.groupFromTarget=function(t){for(var e=t.center?t.center.y:t.clientY,i=0;ia&&ea)return n}else if(0===i&&ec;c++){var f=this.visibleItems[c];f.repositionY(e)}return o},o.prototype._calculateHeight=function(t){var e,i=this.visibleItems;this.resetSubgroups();var o=this;if(i.length>0){var s=i[0].top,r=i[0].top+i[0].height;if(n.forEach(i,function(t){s=Math.min(s,t.top),r=Math.max(r,t.top+t.height),void 0!==t.data.subgroup&&(o.subgroups[t.data.subgroup].height=Math.max(o.subgroups[t.data.subgroup].height,t.height),o.subgroups[t.data.subgroup].visible=!0)}),s>t.axis){var a=s-t.axis;r-=a,n.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)},o.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)},o.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 o=this.dom.axis;o.parentNode&&o.parentNode.removeChild(o)},o.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)}},o.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(s=0;sl}),1==this.checkRangedItems)for(this.checkRangedItems=!1,s=0;sl})}for(s=0;s=0&&(s=e[r],!n(s));r--)void 0===o[s.id]&&(o[s.id]=!0,i.push(s));for(r=t+1;rn;n++)t[n].top=null;for(n=0,s=t.length;s>n;n++){var r=t[n];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 o,n,s;for(o=0,n=t.length;n>o;o++)if(void 0!==t[o].data.subgroup){s=e.axis;for(var r in i)i.hasOwnProperty(r)&&1==i[r].visible&&i[r].indexe.left&&t.top-i.vertical+oe.top}},function(t,e,i){function o(t,e,i){if(this.props={content:{width:0}},this.overflow=!1,t){if(void 0==t.start)throw new Error('Property "start" missing in item '+t.id);if(void 0==t.end)throw new Error('Property "end" missing in item '+t.id)}n.call(this,t,e,i)}var n=(i(3),i(2));o.prototype=new n(null,null,null),o.prototype.baseClassName="vis-item vis-range",o.prototype.isVisible=function(t){return this.data.startt.start},o.prototype.redraw=function(){var t=this.dom;if(t||(this.dom={},t=this.dom,t.box=document.createElement("div"),t.frame=document.createElement("div"),t.frame.className="vis-item-overflow",t.box.appendChild(t.frame),t.content=document.createElement("div"),t.content.className="vis-item-content",t.frame.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?" vis-selected":"");t.box.className=this.baseClassName+i,this.overflow="hidden"!==window.getComputedStyle(t.frame).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()},o.prototype.show=function(){this.displayed||this.redraw()},o.prototype.hide=function(){if(this.displayed){var t=this.dom.box;t.parentNode&&t.parentNode.removeChild(t),this.displayed=!1}},o.prototype.repositionX=function(t){var e,i,o=this.parent.width,n=this.conversion.toScreen(this.data.start),s=this.conversion.toScreen(this.data.end);(void 0===t||t===!0)&&(-o>n&&(n=-o),s>2*o&&(s=2*o));var r=Math.max(s-n,1);switch(this.overflow?(this.left=n,this.width=r+this.props.content.width,i=this.props.content.width):(this.left=n,this.width=r,i=Math.min(s-n,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,0)+"px";break;case"center":this.dom.content.style.left=Math.max((r-i)/2,0)+"px";break;default:e=this.overflow?s>0?Math.max(-n,0):-i:0>n?-n:0,this.dom.content.style.left=e+"px"}},o.prototype.repositionY=function(){var t=this.options.orientation.item,e=this.dom.box;"top"==t?e.style.top=this.top+"px":e.style.top=this.parent.height-this.top-this.height+"px"},o.prototype._repaintDragLeft=function(){if(this.selected&&this.options.editable.updateTime&&!this.dom.dragLeft){var t=document.createElement("div");t.className="vis-drag-left",t.dragLeftItem=this,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)},o.prototype._repaintDragRight=function(){if(this.selected&&this.options.editable.updateTime&&!this.dom.dragRight){var t=document.createElement("div");t.className="vis-drag-right",t.dragRightItem=this,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=o},function(t,e,i){function o(t,e,i,n){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=n,void 0===n&&(this.hiddenDates=[]),this.format=o.FORMAT}var n=i(8),s=i(31),r=i(7);o.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:""}},o.prototype.setFormat=function(t){var e=r.deepExtend({},o.FORMAT);this.format=r.deepExtend(e,t)},o.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)},o.prototype.first=function(){this.current=new Date(this._start.valueOf()),this.roundToMinor()},o.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)}},o.prototype.hasNext=function(){return this.current.valueOf()<=this._end.valueOf()},o.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)},o.prototype.setAutoScale=function(t){this.autoScale=t},o.prototype.setMinimumStep=function(t){if(void 0!=t){var e=31104e6,i=2592e6,o=864e5,n=36e5,s=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*o>t&&(this.scale="day",this.step=5),2*o>t&&(this.scale="day",this.step=2),o>t&&(this.scale="day",this.step=1),o/2>t&&(this.scale="weekday",this.step=1),4*n>t&&(this.scale="hour",this.step=4),n>t&&(this.scale="hour",this.step=1),15*s>t&&(this.scale="minute",this.step=15),10*s>t&&(this.scale="minute",this.step=10),5*s>t&&(this.scale="minute",this.step=5),s>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)}},o.snap=function(t,e,i){var o=new Date(t.valueOf());if("year"==e){var n=o.getFullYear()+Math.round(o.getMonth()/12);o.setFullYear(Math.round(n/i)*i),o.setMonth(0),o.setDate(0),o.setHours(0),o.setMinutes(0),o.setSeconds(0),o.setMilliseconds(0)}else if("month"==e)o.getDate()>15?(o.setDate(1),o.setMonth(o.getMonth()+1)):o.setDate(1),o.setHours(0),o.setMinutes(0),o.setSeconds(0),o.setMilliseconds(0);else if("day"==e){switch(i){case 5:case 2:o.setHours(24*Math.round(o.getHours()/24));break;default:o.setHours(12*Math.round(o.getHours()/12))}o.setMinutes(0),o.setSeconds(0),o.setMilliseconds(0)}else if("weekday"==e){switch(i){case 5:case 2:o.setHours(12*Math.round(o.getHours()/12));break;default:o.setHours(6*Math.round(o.getHours()/6))}o.setMinutes(0),o.setSeconds(0),o.setMilliseconds(0)}else if("hour"==e){switch(i){case 4:o.setMinutes(60*Math.round(o.getMinutes()/60));break;default:o.setMinutes(30*Math.round(o.getMinutes()/30))}o.setSeconds(0),o.setMilliseconds(0)}else if("minute"==e){switch(i){case 15:case 10:o.setMinutes(5*Math.round(o.getMinutes()/5)),o.setSeconds(0);break;case 5:o.setSeconds(60*Math.round(o.getSeconds()/60));break;default:o.setSeconds(30*Math.round(o.getSeconds()/30))}o.setMilliseconds(0)}else if("second"==e)switch(i){case 15:case 10:o.setSeconds(5*Math.round(o.getSeconds()/5)),o.setMilliseconds(0);break;case 5:o.setMilliseconds(1e3*Math.round(o.getMilliseconds()/1e3));break;default:o.setMilliseconds(500*Math.round(o.getMilliseconds()/500))}else if("millisecond"==e){var s=i>5?i/2:1;o.setMilliseconds(Math.round(o.getMilliseconds()/s)*s)}return o},o.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}},o.prototype.getLabelMinor=function(t){void 0==t&&(t=this.current);var e=this.format.minorLabels[this.scale];return e&&e.length>0?n(t).format(e):""},o.prototype.getLabelMajor=function(t){void 0==t&&(t=this.current);var e=this.format.majorLabels[this.scale];return e&&e.length>0?n(t).format(e):""},o.prototype.getClassName=function(){function t(t){return t/h%2==0?" vis-even":" vis-odd"}function e(t){return t.isSame(new Date,"day")?" vis-today":t.isSame(n().add(1,"day"),"day")?" vis-tomorrow":t.isSame(n().add(-1,"day"),"day")?" vis-yesterday":""}function i(t){return t.isSame(new Date,"week")?" vis-current-week":""}function o(t){return t.isSame(new Date,"month")?" vis-current-month":""}function s(t){return t.isSame(new Date,"year")?" vis-current-year":""}var r=n(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+"-h"+(d+4)),"vis-h"+d+e(a)+t(a.hours());case"weekday":return"vis-"+a.format("dddd").toLowerCase()+e(a)+i(a)+t(a.date());case"day":var l=a.date(),u=a.format("MMMM").toLowerCase();return"vis-day"+l+" vis-"+u+o(a)+t(l-1);case"month":return"vis-"+a.format("MMMM").toLowerCase()+o(a)+t(a.month());case"year":var c=a.year();return"vis-year"+c+s(a)+t(c);default:return""}},t.exports=o},function(t,e,i){function o(t,e,i){n.call(this,t,e,i),this.width=0,this.height=0,this.top=0,this.left=0}var n=(i(7),i(34));o.prototype=Object.create(n.prototype),o.prototype.redraw=function(t,e,i){var o=!1;this.visibleItems=this._updateVisibleItems(this.orderedItems,this.visibleItems,t),this.width=this.dom.background.offsetWidth,this.dom.background.style.height="0";for(var n=0,s=this.visibleItems.length;s>n;n++){var r=this.visibleItems[n];r.repositionY(e)}return o},o.prototype.show=function(){this.dom.background.parentNode||this.itemSet.dom.background.appendChild(this.dom.background)},t.exports=o},function(t,e,i){function o(t,e,i){if(this.props={dot:{top:0,width:0,height:0},content:{height:0,marginLeft:0}},t&&void 0==t.start)throw new Error('Property "start" missing in item '+t);n.call(this,t,e,i)}var n=i(2);o.prototype=new n(null,null,null),o.prototype.isVisible=function(t){var e=(t.end-t.start)/4;return this.data.start>t.start-e&&this.data.startt.start},o.prototype.redraw=function(){var t=this.dom;if(t||(this.dom={},t=this.dom,t.box=document.createElement("div"),t.frame=document.createElement("div"),t.frame.className="vis-item-overflow",t.box.appendChild(t.frame),t.content=document.createElement("div"),t.content.className="vis-item-content",t.frame.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?" vis-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}},o.prototype.show=r.prototype.show,o.prototype.hide=r.prototype.hide,o.prototype.repositionX=r.prototype.repositionX,o.prototype.repositionY=function(t){var e="top"===this.options.orientation.item;this.dom.content.style.top=e?"":"0",this.dom.content.style.bottom=e?"0":"";var i;if(void 0!==this.data.subgroup){var o=this.data.subgroup,n=this.parent.subgroups,r=n[o].index;if(1==e){i=this.parent.subgroups[o].height+t.item.vertical,i+=0==r?t.axis-.5*t.item.vertical:0;var a=this.parent.top;for(var h in n)n.hasOwnProperty(h)&&1==n[h].visible&&n[h].indexr&&(a+=l)}i=this.parent.subgroups[o].height+t.item.vertical,this.dom.box.style.top=this.parent.height-d+a+"px",this.dom.box.style.bottom=""}}else this.parent instanceof s?(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=o},function(t,e,i){function o(t,e){this.dom={foreground:null,lines:[],majorTexts:[],minorTexts:[],redundant:{lines:[],majorTexts:[],minorTexts:[]}},this.props={range:{start:0,end:0,minimumStep:0},lineTop:0},this.defaultOptions={orientation:{axis:"bottom"},showMinorLabels:!0,showMajorLabels:!0,format:r.FORMAT,timeAxis:null},this.options=n.extend({},this.defaultOptions),this.body=t,this._create(),this.setOptions(e)}var n=i(7),s=i(27),r=i(37),a=i(31),h=i(8);o.prototype=new s,o.prototype.setOptions=function(t){t&&(n.selectiveExtend(["showMinorLabels","showMajorLabels","hiddenDates","timeAxis"],this.options,t),n.selectiveDeepExtend(["format"],this.options,t),"orientation"in t&&("string"==typeof t.orientation?this.options.orientation.axis=t.orientation:"object"==typeof t.orientation&&"axis"in t.orientation&&(this.options.orientation.axis=t.orientation.axis)),"locale"in t&&("function"==typeof h.locale?h.locale(t.locale):h.lang(t.locale)))},o.prototype._create=function(){this.dom.foreground=document.createElement("div"),this.dom.background=document.createElement("div"),this.dom.foreground.className="vis-time-axis vis-foreground",this.dom.background.className="vis-time-axis vis-background"},o.prototype.destroy=function(){this.dom.foreground.parentNode&&this.dom.foreground.parentNode.removeChild(this.dom.foreground),this.dom.background.parentNode&&this.dom.background.parentNode.removeChild(this.dom.background),this.body=null},o.prototype.redraw=function(){var t=this.options,e=this.props,i=this.dom.foreground,o=this.dom.background,n="top"==t.orientation.axis?this.body.dom.top:this.body.dom.bottom,s=i.parentNode!==n;this._calculateCharSize();var r=this.options.showMinorLabels,a=this.options.showMajorLabels;e.minorLabelHeight=r?e.minorCharHeight:0,e.majorLabelHeight=a?e.majorCharHeight:0,e.height=e.minorLabelHeight+e.majorLabelHeight,e.width=i.offsetWidth,e.minorLineHeight=this.body.domProps.root.height-e.majorLabelHeight-("top"==t.orientation.axis?this.body.domProps.bottom.height:this.body.domProps.top.height),e.minorLineWidth=1,e.majorLineHeight=e.minorLineHeight+e.majorLabelHeight,e.majorLineWidth=1;var h=i.nextSibling,d=o.nextSibling;return i.parentNode&&i.parentNode.removeChild(i),o.parentNode&&o.parentNode.removeChild(o),i.style.height=this.props.height+"px",this._repaintLabels(),h?n.insertBefore(i,h):n.appendChild(i),d?this.body.dom.backgroundVertical.insertBefore(o,d):this.body.dom.backgroundVertical.appendChild(o),this._isResized()||s},o.prototype._repaintLabels=function(){var t=this.options.orientation.axis,e=n.convert(this.body.range.start,"Number"),i=n.convert(this.body.range.end,"Number"),o=this.body.util.toTime(7*(this.props.minorCharWidth||10)).valueOf(),s=o-a.getHiddenDurationBefore(this.body.hiddenDates,this.body.range,o);s-=this.body.util.toTime(0).valueOf();var h=new r(new Date(e),new Date(i),s,this.body.hiddenDates);this.options.format&&h.setFormat(this.options.format),this.options.timeAxis&&h.setScale(this.options.timeAxis),this.step=h;var d=this.dom;d.redundant.lines=d.lines,d.redundant.majorTexts=d.majorTexts,d.redundant.minorTexts=d.minorTexts,d.lines=[],d.majorTexts=[],d.minorTexts=[];var l,u,c,p,f=0,m=0,v=0,g=void 0,y=0;for(h.first();h.hasNext()&&1e3>y;)y++,l=h.getCurrent(),u=h.isMajor(),p=h.getClassName(),m=f,f=this.body.util.toScreen(l),v=f-m,c&&(c.style.width=v+"px"),this.options.showMinorLabels&&this._repaintMinorText(f,h.getLabelMinor(),t,p),u&&this.options.showMajorLabels?(f>0&&(void 0==g&&(g=f),this._repaintMajorText(f,h.getLabelMajor(),t,p)),c=this._repaintMajorLine(f,t,p)):c=this._repaintMinorLine(f,t,p),h.next();if(this.options.showMajorLabels){var b=this.body.util.toTime(0),w=h.getLabelMajor(b),_=w.length*(this.props.majorCharWidth||10)+10;(void 0==g||g>_)&&this._repaintMajorText(0,w,t,p)}n.forEach(this.dom.redundant,function(t){for(;t.length;){var e=t.pop();e&&e.parentNode&&e.parentNode.removeChild(e)}})},o.prototype._repaintMinorText=function(t,e,i,o){var n=this.dom.redundant.minorTexts.shift();if(!n){var s=document.createTextNode("");n=document.createElement("div"),n.appendChild(s),this.dom.foreground.appendChild(n)}this.dom.minorTexts.push(n),n.childNodes[0].nodeValue=e,n.style.top="top"==i?this.props.majorLabelHeight+"px":"0",n.style.left=t+"px",n.className="vis-text vis-minor "+o},o.prototype._repaintMajorText=function(t,e,i,o){var n=this.dom.redundant.majorTexts.shift();if(!n){var s=document.createTextNode(e);n=document.createElement("div"),n.appendChild(s),this.dom.foreground.appendChild(n)}this.dom.majorTexts.push(n),n.childNodes[0].nodeValue=e,n.className="vis-text vis-major "+o,n.style.top="top"==i?"0":this.props.minorLabelHeight+"px",n.style.left=t+"px"},o.prototype._repaintMinorLine=function(t,e,i){var o=this.dom.redundant.lines.shift();o||(o=document.createElement("div"),this.dom.background.appendChild(o)),this.dom.lines.push(o);var n=this.props;return"top"==e?o.style.top=n.majorLabelHeight+"px":o.style.top=this.body.domProps.top.height+"px",o.style.height=n.minorLineHeight+"px",o.style.left=t-n.minorLineWidth/2+"px",o.className="vis-grid vis-vertical vis-minor "+i,o},o.prototype._repaintMajorLine=function(t,e,i){var o=this.dom.redundant.lines.shift();o||(o=document.createElement("div"),this.dom.background.appendChild(o)),this.dom.lines.push(o);var n=this.props;return"top"==e?o.style.top="0":o.style.top=this.body.domProps.top.height+"px",o.style.left=t-n.majorLineWidth/2+"px",o.style.height=n.majorLineHeight+"px",o.className="vis-grid vis-vertical vis-major "+i,o},o.prototype._calculateCharSize=function(){this.dom.measureCharMinor||(this.dom.measureCharMinor=document.createElement("DIV"),this.dom.measureCharMinor.className="vis-text vis-minor vis-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="vis-text vis-major vis-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=o},function(t,e,i){function o(t){this.active=!1,this.dom={container:t},this.dom.overlay=document.createElement("div"),this.dom.overlay.className="vis-overlay",this.dom.container.appendChild(this.dom.overlay),this.hammer=a(this.dom.overlay),this.hammer.on("tap",this._onTapOverlay.bind(this));var e=this,i=["tap","doubletap","press","pinch","pan","panstart","panmove","panend"];i.forEach(function(t){e.hammer.on(t,function(t){t.stopPropagation()})}),this.bodyHammer=a(document&&document.body,{prevent_default:!1}),this.bodyHammer.on("tap",function(i){n(i.target,t)||e.deactivate()}),void 0!==this.keycharm&&this.keycharm.destroy(),this.keycharm=s(),this.escListener=this.deactivate.bind(this)}function n(t,e){for(;t;){if(t===e)return!0;t=t.parentNode}return!1}var s=i(43),r=i(19),a=i(3),h=i(7);r(o.prototype),o.current=null,o.prototype.destroy=function(){this.deactivate(),this.dom.overlay.parentNode.removeChild(this.dom.overlay),this.hammer=null,this.bodyHammer=null},o.prototype.activate=function(){o.current&&o.current.deactivate(),o.current=this,this.active=!0,this.dom.overlay.style.display="none",h.addClassName(this.dom.container,"vis-active"),this.emit("change"),this.emit("activate"),this.keycharm.bind("esc",this.escListener)},o.prototype.deactivate=function(){this.active=!1,this.dom.overlay.style.display="",h.removeClassName(this.dom.container,"vis-active"),this.keycharm.unbind("esc",this.escListener),this.emit("change"),this.emit("deactivate")},o.prototype._onTapOverlay=function(t){this.activate(),t.stopPropagation()},t.exports=o},function(t,e,i){var o,n,s;!function(i,r){n=[],o=r,s="function"==typeof o?o.apply(e,n):o,!(void 0!==s&&(t.exports=s))}(this,function(){function t(t){var e,i=t&&t.preventDefault||!1,o=t&&t.container||window,n={},s={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!==s[e][t.keyCode]){for(var o=s[e][t.keyCode],n=0;n0&&this._makeItem([]),this._makeHeader(n),this._handleObject(this.configureOptions[n],[n])),i++);this.options.showButton===!0&&!function(){var e=document.createElement("div");e.className="vis-network-configuration button",e.innerHTML="generate options",e.onclick=function(){t._printOptions()},e.onmouseover=function(){e.className="vis-network-configuration button hover"},e.onmouseout=function(){e.className="vis-network-configuration button"},t.optionsContainer=document.createElement("div"),t.optionsContainer.className="vis-network-configuration vis-option-container",t.domElements.push(t.optionsContainer),t.domElements.push(e)}(),this._push(),this.colorPicker.insertTo(this.container)}},{key:"_push",value:function(){this.wrapper=document.createElement("div"),this.wrapper.className="vis-network-configuration-wrapper",this.container.appendChild(this.wrapper);for(var t=0;t1?i-1:0),n=1;i>n;n++)o[n-1]=arguments[n];this.allowCreation===!0&&!function(){var i=document.createElement("div");i.className="vis-network-configuration item s"+t.length,o.forEach(function(t){i.appendChild(t)}),e.domElements.push(i)}()}},{key:"_makeHeader",value:function(t){var e=document.createElement("div");e.className="vis-network-configuration header",e.innerHTML=t,this._makeItem([],e)}},{key:"_makeLabel",value:function(t,e){var i=void 0===arguments[2]?!1:arguments[2],o=document.createElement("div");return o.className="vis-network-configuration label s"+e.length,i===!0?o.innerHTML=""+t+":":o.innerHTML=t+":",o}},{key:"_makeDropdown",value:function(t,e,i){var o=document.createElement("select");o.className="vis-network-configuration select";var n=0;void 0!==e&&-1!==t.indexOf(e)&&(n=t.indexOf(e));for(var s=0;se&&n>2*e?a.min=2*e:n>.1*e&&(a.min=e/10),2*e>s&&1!==s&&(a.max=2*e),a.value=e):a.value=o;var h=document.createElement("input");h.className="vis-network-configuration rangeinput",h.value=a.value;var d=this;a.onchange=function(){h.value=this.value,d._update(Number(this.value),i)},a.oninput=function(){h.value=this.value};var l=this._makeLabel(i[i.length-1],i);this._makeItem(i,l,a,h)}},{key:"_makeCheckbox",value:function(t,e,i){var o=document.createElement("input");o.type="checkbox",o.className="vis-network-configuration checkbox",o.checked=t,void 0!==e&&(o.checked=e,e!==t&&("object"==typeof t?e!==t.enabled&&this.changedOptions.push({path:i,value:e}):this.changedOptions.push({path:i,value:e})));var n=this;o.onchange=function(){n._update(this.checked,i)};var s=this._makeLabel(i[i.length-1],i);this._makeItem(i,s,o)}},{key:"_makeTextInput",value:function(t,e,i){var o=document.createElement("input");o.type="text",o.className="vis-network-configuration text",o.value=e,e!==t&&this.changedOptions.push({path:i,value:e});var n=this;o.onchange=function(){n._update(this.value,i)};var s=this._makeLabel(i[i.length-1],i);this._makeItem(i,s,o)}},{key:"_makeColorField",value:function(t,e,i){var o=this,n=t[1],s=document.createElement("div");e=void 0===e?n:e,"none"!==e?(s.className="vis-network-configuration colorBlock",s.style.backgroundColor=e):s.className="vis-network-configuration colorBlock none",e=void 0===e?n:e,s.onclick=function(){o._showColorPicker(e,s,i)};var r=this._makeLabel(i[i.length-1],i);this._makeItem(i,r,s)}},{key:"_showColorPicker",value:function(t,e,i){var o=this,n=e.getBoundingClientRect(),s=document.body.getBoundingClientRect(),r=n.left+n.width+5,a=n.top-s.top+.5*n.height;this.colorPicker.show(r,a),this.colorPicker.setColor(t),this.colorPicker.setCallback(function(t){var n="rgba("+t.r+","+t.g+","+t.b+","+t.a+")";e.style.backgroundColor=n,o._update(n,i)})}},{key:"_handleObject",value:function(t){var e=void 0===arguments[1]?[]:arguments[1],i=void 0===arguments[2]?!1:arguments[2],o=!1,n=this.options.filter,s=!1;for(var r in t)if(t.hasOwnProperty(r)){o=!0;var a=t[r],d=h.copyAndExtendArray(e,r);if("function"==typeof n&&(o=n(r,e),o===!1&&!(a instanceof Array)&&"string"!=typeof a&&"boolean"!=typeof a&&a instanceof Object&&(this.allowCreation=!1,o=this._handleObject(a,d,!0),this.allowCreation=i===!1)),o!==!1){s=!0;var l=this._getValue(d);if(a instanceof Array)this._handleArray(a,l,d);else if("string"==typeof a)this._makeTextInput(a,l,d);else if("boolean"==typeof a)this._makeCheckbox(a,l,d);else if(a instanceof Object){var u=!0;if(-1!==e.indexOf("physics")&&this.moduleOptions.physics.solver!==r&&(u=!1),u===!0)if(void 0!==a.enabled){var c=h.copyAndExtendArray(d,"enabled"),p=this._getValue(c);if(p===!0){var f=this._makeLabel(r,d,!0);this._makeItem(d,f),s=this._handleObject(a,d)||s}else this._makeCheckbox(a,p,d)}else{var f=this._makeLabel(r,d,!0);this._makeItem(d,f),s=this._handleObject(a,d)||s}}else console.error("dont know how to handle",a,r,d)}}return s}},{key:"_handleArray",value:function(t,e,i){"string"==typeof t[0]&&"color"===t[0]?(this._makeColorField(t,e,i),t[1]!==e&&this.changedOptions.push({path:i,value:e})):"string"==typeof t[0]?(this._makeDropdown(t,e,i),t[0]!==e&&this.changedOptions.push({path:i,value:e})):"number"==typeof t[0]&&(this._makeRange(t,e,i),t[0]!==e&&this.changedOptions.push({path:i,value:Number(e)}))}},{key:"_update",value:function(t,e){var i=this._constructOptions(t,e);this.parent.setOptions(i)}},{key:"_constructOptions",value:function(t,e){var i=void 0===arguments[2]?{}:arguments[2],o=i;t="true"===t?!0:t,t="false"===t?!1:t;for(var n=0;nvar options = "+JSON.stringify(t,null,2)+""}}]),t}();e["default"]=d,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;is;s++)for(r=0;rp?p+1:p;var f=l/this.r,m=a.RGBToHSV(this.color.r,this.color.g,this.color.b);m.h=p,m.s=f;var v=a.HSVToRGB(m.h,m.s,m.v);v.a=this.color.a,this.color=v,this.initialColorDiv.style.backgroundColor="rgba("+this.initialColor.r+","+this.initialColor.g+","+this.initialColor.b+","+this.initialColor.a+")",this.newColorDiv.style.backgroundColor="rgba("+this.color.r+","+this.color.g+","+this.color.b+","+this.color.a+")"}}]),t}();e["default"]=h,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;is.distance?console.log('%cUnknown option detected: "'+e+'" in '+t.printLocation(n.path,e,"")+"Perhaps it was misplaced? Matching option found at: "+t.printLocation(s.path,s.closestMatch,""),h):n.distance<=d?console.log('%cUnknown option detected: "'+e+'". Did you mean "'+n.closestMatch+'"?'+t.printLocation(n.path,e),h):console.log('%cUnknown option detected: "'+e+'". Did you mean one of these: '+t.print(Object.keys(i))+t.printLocation(o,e),h), +r=!0}},{key:"findInOptions",value:function(e,i,o){var n=void 0===arguments[3]?!1:arguments[3],r=1e9,a="",h=[],d=e.toLowerCase(),l=void 0;for(var u in i){var c=void 0;if(void 0!==i[u].__type__&&n===!0){var p=t.findInOptions(e,i[u],s.copyAndExtendArray(o,u));r>p.distance&&(a=p.closestMatch,h=p.path,r=p.distance,l=p.indexMatch)}else-1!==u.toLowerCase().indexOf(d)&&(l=u),c=t.levenshteinDistance(e,u),r>c&&(a=u,h=s.copyArray(o),r=c)}return{closestMatch:a,path:h,distance:r,indexMatch:l}}},{key:"printLocation",value:function(t,e){for(var i=void 0===arguments[2]?"Problem value found at: \n":arguments[2],o="\n\n"+i+"options = {\n",n=0;ns;s++)o+=" ";o+=t[n]+": {\n"}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}},o.prototype.getEventProperties=function(t){var e=t.center?t.center.x:t.clientX,i=t.center?t.center.y:t.clientY,o=e-n.getAbsoluteLeft(this.dom.centerContainer),s=i-n.getAbsoluteTop(this.dom.centerContainer),r=this._toTime(o),a=u.customTimeFromTarget(t),h=n.getTarget(t),d=null;n.hasParent(h,this.timeAxis.dom.foreground)?d="axis":this.timeAxis2&&n.hasParent(h,this.timeAxis2.dom.foreground)?d="axis":n.hasParent(h,this.linegraph.yAxisLeft.dom.frame)?d="data-axis":n.hasParent(h,this.linegraph.yAxisRight.dom.frame)?d="data-axis":n.hasParent(h,this.linegraph.legendLeft.dom.frame)?d="legend":n.hasParent(h,this.linegraph.legendRight.dom.frame)?d="legend":null!=a?d="custom-time":n.hasParent(h,this.currentTime.bar)?d="current-time":n.hasParent(h,this.dom.center)&&(d="background");var l=[],c=this.linegraph.yAxisLeft,p=this.linegraph.yAxisRight;return c.hidden||l.push(c.screenToValue(s)),p.hidden||l.push(p.screenToValue(s)),{event:t,what:d,pageX:t.srcEvent?t.srcEvent.pageX:t.pageX,pageY:t.srcEvent?t.srcEvent.pageY:t.pageY,x:o,y:s,time:r,value:l}},t.exports=o},function(t,e,i){function o(t,e){this.id=n.randomUUID(),this.body=t,this.defaultOptions={yAxisOrientation:"left",defaultGroup:"default",sort:!0,sampling:!0,stack:!1,graphHeight:"400px",shaded:{enabled:!1,orientation:"bottom"},style:"line",barChart:{width:50,sideBySide:!1,align:"center"},interpolation:{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,left:{range:{min:void 0,max:void 0},format:function(t){return t},title:{text:void 0,style:void 0}},right:{range:{min:void 0,max:void 0},format:function(t){return t},title:{text:void 0,style:void 0}}},legend:{enabled:!1,icons:!0,left:{visible:!0,position:"top-left"},right:{visible:!0,position:"top-right"}},groups:{visibility:{}}},this.options=n.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,o){i._onAdd(e.items)},update:function(t,e,o){i._onUpdate(e.items)},remove:function(t,e,o){i._onRemove(e.items)}},this.groupListeners={add:function(t,e,o){i._onAddGroups(e.items)},update:function(t,e,o){i._onUpdateGroups(e.items)},remove:function(t,e,o){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=n.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 n=i(7),s=i(13),r=i(14),a=i(16),h=i(27),d=i(51),l=i(53),u=i(57),c=i(56),p=i(54),f="__ungrouped__";o.prototype=new h,o.prototype._create=function(){var t=document.createElement("div");t.className="vis-line-graph",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 u(this.body,this.options.legend,"left",this.options.groups),this.legendRight=new u(this.body,this.options.legend,"right",this.options.groups),this.show()},o.prototype.setOptions=function(t){if(t){var e=["sampling","defaultGroup","stack","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),u={};for(this._getRelevantData(a,u,d,l),this._applySampling(a,u),e=0;ep&&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;ro){d.push(h);break}d.push(h)}}else for(a=0;ai&&h.x0)for(var o=0;o0){var s=1,r=n.length,a=this.body.util.toGlobalScreen(n[n.length-1].x)-this.body.util.toGlobalScreen(n[0].x),h=r/a;s=Math.min(Math.ceil(.2*r),Math.max(1,Math.round(h)));for(var d=[],l=0;r>l;l+=s)d.push(n[l]);e[t[o]]=d}}},o.prototype._getYRanges=function(t,e,i){var o,n,s,r,a=[],h=[];if(t.length>0){for(s=0;s0&&(n=this.groups[t[s]],r.stack===!0?"left"==r.yAxisOrientation?a=a.concat(n.getData(o)):h=h.concat(n.getData(o)):i[t[s]]=n.getYRange(o,t[s]));c.getStackedYRange(a,i,t,"__barStackLeft","left"),c.getStackedYRange(h,i,t,"__barStackRight","right"),p.getStackedYRange(a,i,t,"__lineStackLeft","left"),p.getStackedYRange(h,i,t,"__lineStackRight","right")}},o.prototype._updateYAxis=function(t,e){var i,o,n=!1,s=!1,r=!1,a=1e9,h=1e9,d=-1e9,l=-1e9;if(t.length>0){for(var u=0;ui?i:a,d=o>d?o:d):(r=!0,h=h>i?i:h,l=o>l?o:l));1==s&&this.yAxisLeft.setRange(a,d),1==r&&this.yAxisRight.setRange(h,l)}n=this._toggleAxisVisiblity(s,this.yAxisLeft)||n,n=this._toggleAxisVisiblity(r,this.yAxisRight)||n,1==r&&1==s?(this.yAxisLeft.drawIcons=!0,this.yAxisRight.drawIcons=!0):(this.yAxisLeft.drawIcons=!1,this.yAxisRight.drawIcons=!1),this.yAxisRight.master=!s,0==this.yAxisRight.master?(1==r?this.yAxisLeft.lineOffset=this.yAxisRight.width:this.yAxisLeft.lineOffset=0,n=this.yAxisLeft.redraw()||n,this.yAxisRight.stepPixels=this.yAxisLeft.stepPixels,this.yAxisRight.zeroCrossing=this.yAxisLeft.zeroCrossing,this.yAxisRight.amountOfSteps=this.yAxisLeft.amountOfSteps,n=this.yAxisRight.redraw()||n):n=this.yAxisRight.redraw()||n;for(var p=["__barStackLeft","__barStackRight","__lineStackLeft","__lineStackRight"],u=0;ut?-1:1});for(var a=0;a0&&(t=0),this.range.start=t,this.range.end=e},o.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)&&(this.groups[i].visible!==!0||void 0!==this.linegraphOptions.visibility[i]&&this.linegraphOptions.visibility[i]!==!0||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=this.options.visible===!0?Number((""+this.options.width).replace("px","")):0;var o=this.props,n=this.dom.frame;n.className="vis-data-axis",this._calculateCharSize();var s=this.options.orientation,r=this.options.showMinorLabels,a=this.options.showMajorLabels;o.minorLabelHeight=r?o.minorCharHeight:0,o.majorLabelHeight=a?o.majorCharHeight:0,o.minorLineWidth=this.body.dom.backgroundHorizontal.offsetWidth-this.lineOffset-this.width+2*this.options.minorLinesOffset,o.minorLineHeight=1,o.majorLineWidth=this.body.dom.backgroundHorizontal.offsetWidth-this.lineOffset-this.width+2*this.options.majorLinesOffset,o.majorLineHeight=1,"left"===s?(n.style.top="0",n.style.left="0",n.style.bottom="",n.style.width=this.width+"px",n.style.height=this.height+"px",this.props.width=this.body.domProps.left.width,this.props.height=this.body.domProps.left.height):(n.style.top="",n.style.bottom="0",n.style.left="0",n.style.width=this.width+"px",n.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,this.options.icons===!0?this._redrawGroupIcons():this._cleanupIcons(),this._redrawTitle(s)}return t},o.prototype._redrawLabels=function(){var t=!1;s.prepareElements(this.DOMelements.lines),s.prepareElements(this.DOMelements.labels);var e,i=this.options.orientation;if(this.master===!1){var o,n,r,h;-1!==this.zeroCrossing&&this.options.alignZeros===!0?this.range.end>0?(o=this.range.end/this.zeroCrossing,n=this.range.end-this.amountOfSteps*o,r=this.range.end):(o=-1*this.range.start/(this.amountOfSteps-this.zeroCrossing),n=this.range.start,r=this.range.start+o*this.amountOfSteps):(n=this.range.start,r=this.range.end),h=this.stepPixels}else h=this.props.majorCharHeight,n=this.range.start,r=this.range.end;if(this.step=e=new a(n,r,h,this.dom.frame.offsetHeight,this.options[this.options.orientation].range,this.options[this.options.orientation].format,this.master===!1&&this.options.alignZeros),this.master===!0)this.stepPixels=this.dom.frame.offsetHeight/e.marginRange*e.step,this.amountOfSteps=Math.ceil(this.dom.frame.offsetHeight/this.stepPixels);else if(this.options.alignZeros===!0&&-1!==this.zeroCrossing){var d=(e.current-this.zeroCrossing*e.step)/e.step;this.step.shift(d)}this.valueAtBottom=e.marginEnd,this.maxLabelSize=0;for(var l=0,u=0,c=!1;u0&&u!==this.amountOfSteps&&((this.options.showMinorLabels&&c===!1||this.master===!1&&this.options.showMinorLabels===!0)&&this._redrawLabel(l-2,e.getCurrent(),i,"vis-y-axis vis-minor",this.props.minorCharHeight),c&&this.options.showMajorLabels&&this.master===!0||this.options.showMinorLabels===!1&&this.master===!1&&c===!0?(l>=0&&this._redrawLabel(l-2,e.getCurrent(),i,"vis-y-axis vis-major",this.props.majorCharHeight),this._redrawLine(l,i,"vis-grid vis-horizontal vis-major",this.options.majorLinesOffset,this.props.majorLineWidth)):this._redrawLine(l,i,"vis-grid vis-horizontal vis-minor",this.options.minorLinesOffset,this.props.minorLineWidth)),this.master===!0&&0===e.current&&(this.zeroCrossing=u),e.next(),u+=1;this.master===!0&&0===e.current&&(this.zeroCrossing=u),this.conversionFactor=this.stepPixels/e.step;var p=0;void 0!==this.options[i].title&&void 0!==this.options[i].title.text&&(p=this.props.titleCharHeight);var f=this.options.icons===!0?Math.max(this.options.iconWidth,p)+this.options.labelOffsetX+15:p+this.options.labelOffsetX+15;return this.maxLabelSize>this.width-f&&this.options.visible===!0?(this.width=this.maxLabelSize+f,this.options.width=this.width+"px",s.cleanupElements(this.DOMelements.lines),s.cleanupElements(this.DOMelements.labels),this.redraw(),t=!0):this.maxLabelSizethis.minWidth?(this.width=Math.max(this.minWidth,this.maxLabelSize+f),this.options.width=this.width+"px",s.cleanupElements(this.DOMelements.lines),s.cleanupElements(this.DOMelements.labels),this.redraw(),t=!0):(s.cleanupElements(this.DOMelements.lines),s.cleanupElements(this.DOMelements.labels),t=!1),t},o.prototype.convertValue=function(t){var e=this.valueAtBottom-t,i=e*this.conversionFactor;return i},o.prototype.screenToValue=function(t){return this.valueAtBottom-t/this.conversionFactor},o.prototype._redrawLabel=function(t,e,i,o,n){var r=s.getDOMElement("div",this.DOMelements.labels,this.dom.frame);r.className=o,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*n+this.options.labelOffsetY+"px",e+="";var a=Math.max(this.props.majorCharWidth,this.props.minorCharWidth);this.maxLabelSizes&&(h=s);for(var d=!1,l=h;Math.abs(l)<=Math.abs(s);l++){a=Math.pow(10,l);for(var u=0;u=n){d=!0,r=u;break}}if(d===!0)break}this.stepIndex=r,this.scale=a,this.step=a*this.minorSteps[r]},o.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,this.alignZeros===!0&&(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},o.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},o.prototype.hasNext=function(){return this.current>=this.marginStart},o.prototype.next=function(){var t=this.current;this.current-=this.step,this.current===t&&(this.current=this._end)},o.prototype.previous=function(){this.current+=this.step,this.marginEnd+=this.step,this.marginRange=this.marginEnd-this.marginStart},o.prototype.getCurrent=function(){var t=Math.abs(this.current)t)for(var e=0;-t>e;e++)this.previous();else if(t>0)for(var e=0;t>e;e++)this.next()},t.exports=o},function(t,e,i){function o(t,e,i,o){this.id=e;var s=["sampling","style","sort","yAxisOrientation","barChart","drawPoints","shaded","interpolation"];this.options=n.selectiveBridgeObject(s,i),this.usingDefaultStyle=void 0===t.className,this.groupsUsingDefaultStyles=o,this.zeroPosition=0,this.update(t),1==this.usingDefaultStyle&&(this.groupsUsingDefaultStyles[0]+=1),this.itemsData=[],this.visible=void 0===t.visible?!0:t.visible}var n=i(7),s=i(13),r=i(54),a=i(56),h=i(55);o.prototype.setItems=function(t){null!=t?(this.itemsData=t,1==this.options.sort&&this.itemsData.sort(function(t,e){return t.x-e.x})):this.itemsData=[]},o.prototype.setZeroPosition=function(t){this.zeroPosition=t},o.prototype.setOptions=function(t){if(void 0!==t){var e=["sampling","style","sort","yAxisOrientation","barChart"];n.selectiveDeepExtend(e,this.options,t),n.mergeOptions(this.options,t,"interpolation"),n.mergeOptions(this.options,t,"drawPoints"),n.mergeOptions(this.options,t,"shaded"),t.interpolation&&"object"==typeof t.interpolation&&t.interpolation.parametrization&&("uniform"==t.interpolation.parametrization?this.options.interpolation.alpha=0:"chordal"==t.interpolation.parametrization?this.options.interpolation.alpha=1:(this.options.interpolation.parametrization="centripetal",this.options.interpolation.alpha=.5))}"line"==this.options.style?this.type=new r(this.id,this.options):"bar"==this.options.style?this.type=new a(this.id,this.options):"points"==this.options.style&&(this.type=new h(this.id,this.options))},o.prototype.update=function(t){this.group=t,this.content=t.content||"graph",this.className=t.className||this.className||"vis-graph-group"+this.groupsUsingDefaultStyles[0]%10,this.visible=void 0===t.visible?!0:t.visible,this.style=t.style,this.setOptions(t.options)},o.prototype.drawIcon=function(t,e,i,o,n,r){var a,h,d=.5*r,l=s.getSVGElement("rect",i,o);if(l.setAttributeNS(null,"x",t),l.setAttributeNS(null,"y",e-d),l.setAttributeNS(null,"width",n),l.setAttributeNS(null,"height",2*d),l.setAttributeNS(null,"class","vis-outline"),"line"==this.options.style)a=s.getSVGElement("path",i,o),a.setAttributeNS(null,"class",this.className),void 0!==this.style&&a.setAttributeNS(null,"style",this.style),a.setAttributeNS(null,"d","M"+t+","+e+" L"+(t+n)+","+e),1==this.options.shaded.enabled&&(h=s.getSVGElement("path",i,o),"top"==this.options.shaded.orientation?h.setAttributeNS(null,"d","M"+t+", "+(e-d)+"L"+t+","+e+" L"+(t+n)+","+e+" L"+(t+n)+","+(e-d)):h.setAttributeNS(null,"d","M"+t+","+e+" L"+t+","+(e+d)+" L"+(t+n)+","+(e+d)+"L"+(t+n)+","+e),h.setAttributeNS(null,"class",this.className+" vis-icon-fill")),1==this.options.drawPoints.enabled&&s.drawPoint(t+.5*n,e,this,i,o);else{var u=Math.round(.3*n),c=Math.round(.4*r),p=Math.round(.75*r),f=Math.round((n-2*u)/3);s.drawBar(t+.5*u+f,e+d-c-1,u,c,this.className+" vis-bar",i,o,this.style),s.drawBar(t+1.5*u+f+2,e+d-p-1,u,p,this.className+" vis-bar",i,o,this.style)}},o.prototype.getLegend=function(t,e){var i=document.createElementNS("http://www.w3.org/2000/svg","svg");return this.drawIcon(0,.5*e,[],i,t,e),{icon:i,label:this.content,orientation:this.options.yAxisOrientation}},o.prototype.getYRange=function(t){return this.type.getYRange(t)},o.prototype.getData=function(t){return this.type.getData(t)},o.prototype.draw=function(t,e,i){this.type.draw(t,e,i)},t.exports=o},function(t,e,i){function o(t,e){this.groupId=t,this.options=e}var n=i(13),s=i(55);o.prototype.getData=function(t){for(var e=[],i=0;it[o].y?t[o].y:e,i=i0){t.sort(function(t,e){return t.x===e.x?t.groupIde[s].y?e[s].y:o,n=nt[r].accumulatedNegative?t[r].accumulatedNegative:o,o=o>t[r].accumulatedPositive?t[r].accumulatedPositive:o,n=n0&&(i=Math.min(i,Math.abs(e[o-1].x-e[o].x))),0===i&&(void 0===t[e[o].x]&&(t[e[o].x]={amount:0,resolved:0,accumulatedPositive:0,accumulatedNegative:0}),t[e[o].x].amount+=1)},o.prototype.draw=function(t,e,i){if(null!=t&&t.length>0){var r,a,h=Number(i.svg.style.height.replace("px",""));if(r=n.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.interpolation.enabled?o._catmullRom(t,e):o._linear(t),1==e.options.shaded.enabled){var d,l=n.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+" vis-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&&s.draw(t,e,i)}},o._catmullRomUniform=function(t){for(var e,i,o,n,s,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],o=t[l+1],n=d>l+2?t[l+2]:o,s={x:(-e.x+6*i.x+o.x)*h,y:(-e.y+6*i.y+o.y)*h},r={x:(i.x+6*o.x-n.x)*h,y:(i.y+6*o.y-n.y)*h},a+="C"+s.x+","+s.y+" "+r.x+","+r.y+" "+o.x+","+o.y+" ";return a},o._catmullRom=function(t,e){var i=e.options.interpolation.alpha;if(0==i||void 0===i)return this._catmullRomUniform(t);for(var o,n,s,r,a,h,d,l,u,c,p,f,m,v,g,y,b,w,_,x=Math.round(t[0].x)+","+Math.round(t[0].y)+" ",k=t.length,M=0;k-1>M;M++)o=0==M?t[0]:t[M-1],n=t[M],s=t[M+1],r=k>M+2?t[M+2]:s,d=Math.sqrt(Math.pow(o.x-n.x,2)+Math.pow(o.y-n.y,2)),l=Math.sqrt(Math.pow(n.x-s.x,2)+Math.pow(n.y-s.y,2)),u=Math.sqrt(Math.pow(s.x-r.x,2)+Math.pow(s.y-r.y,2)),v=Math.pow(u,i),y=Math.pow(u,2*i),g=Math.pow(l,i),b=Math.pow(l,2*i),_=Math.pow(d,i),w=Math.pow(d,2*i),c=2*w+3*_*g+b,p=2*y+3*v*g+b,f=3*_*(_+g),f>0&&(f=1/f),m=3*v*(v+g),m>0&&(m=1/m),a={x:(-b*o.x+c*n.x+w*s.x)*f,y:(-b*o.y+c*n.y+w*s.y)*f},h={x:(y*n.x+p*s.x-b*r.x)*m,y:(y*n.y+p*s.y-b*r.y)*m},0==a.x&&0==a.y&&(a=n),0==h.x&&0==h.y&&(h=s),x+="C"+a.x+","+a.y+" "+h.x+","+h.y+" "+s.x+","+s.y+" ";return x},o._linear=function(t){for(var e="",i=0;it[o].y?t[o].y:e,i=it[o].y?t[o].y:e,i=i0&&(r=Math.min(r,Math.abs(c[l-1].x-a))),h=o._getSafeDrawData(r,d,m);else{var g=l+(p[a].amount-p[a].resolved),y=l-(p[a].resolved+1);g0&&(r=Math.min(r,Math.abs(c[y].x-a))),h=o._getSafeDrawData(r,d,m),p[a].resolved+=1,d.options.stack===!0?c[l].y0&&(i=Math.min(i,Math.abs(e[o-1].x-e[o].x))),0===i&&(void 0===t[e[o].x]&&(t[e[o].x]={amount:0,resolved:0,accumulatedPositive:0,accumulatedNegative:0}),t[e[o].x].amount+=1)},o._getSafeDrawData=function(t,e,i){var o,n;return t0?(o=i>t?i:t,n=0,"left"===e.options.barChart.align?n-=.5*t:"right"===e.options.barChart.align&&(n+=.5*t)):(o=e.options.barChart.width,n=0,"left"===e.options.barChart.align?n-=.5*e.options.barChart.width:"right"===e.options.barChart.align&&(n+=.5*e.options.barChart.width)),{width:o,offset:n}},o.getStackedYRange=function(t,e,i,n,s){if(t.length>0){t.sort(function(t,e){return t.x===e.x?t.groupIde[s].y?e[s].y:o,n=nt[r].accumulatedNegative?t[r].accumulatedNegative:o,o=o>t[r].accumulatedPositive?t[r].accumulatedPositive:o,n=nt?-1:1});for(var i=0;i")}this.dom.textArea.innerHTML=s,this.dom.textArea.style.lineHeight=.75*this.options.iconSize+this.options.iconSpacing+"px"}},o.prototype.drawLegendIcons=function(){if(this.dom.frame.parentNode){var t=Object.keys(this.groups);t.sort(function(t,e){return e>t?-1:1}),s.prepareElements(this.svgElements);var e=window.getComputedStyle(this.dom.frame).paddingTop,i=Number(e.replace("px","")),o=i,n=this.options.iconSize,r=.75*this.options.iconSize,a=i+.5*r+3;this.svg.style.width=n+5+i+"px";for(var h=0;h0){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%this.defaultGroups.length;this.defaultIndex++,e={},e.color=this.defaultGroups[i],this.groups[t]=e}return e}},{key:"add",value:function(t,e){return this.groups[t]=e,this.groupsArray.push(t),e}}]),t}();e["default"]=r,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;it.left&&this.shape.topt.top}},{key:"isBoundingBoxOverlappingWith",value:function(t){return this.shape.boundingBox.leftt.left&&this.shape.boundingBox.topt.top}}],[{key:"parseOptions",value:function(t,e){var i=void 0===arguments[2]?!1:arguments[2],o=["color","font","fixed","shadow"];if(B.selectiveNotDeepExtend(o,t,e,i),B.mergeOptions(t,e,"shadow"),void 0!==e.color&&null!==e.color){var n=B.parseColor(e.color);B.fillIfDefined(t.color,n)}else i===!0&&null===e.color&&(t.color=void 0,delete t.color);void 0!==e.fixed&&null!==e.fixed&&("boolean"==typeof e.fixed?(t.fixed.x=e.fixed,t.fixed.y=e.fixed):(void 0!==e.fixed.x&&"boolean"==typeof e.fixed.x&&(t.fixed.x=e.fixed.x),void 0!==e.fixed.y&&"boolean"==typeof e.fixed.y&&(t.fixed.y=e.fixed.y))),void 0!==e.font&&a["default"].parseOptions(t.font,e),void 0!==e.scaling&&B.mergeOptions(t.scaling,e.scaling,"label")}}]),t}();e["default"]=R,t.exports=e["default"]},function(t,e,i){function o(t,e){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t)){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(h){n=!0,s=h}finally{try{!o&&a["return"]&&a["return"]()}finally{if(n)throw s}}return i}throw new TypeError("Invalid attempt to destructure non-iterable instance")}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;i=this.options.scaling.label.maxVisible&&(r=Number(this.options.scaling.label.maxVisible)/this.body.view.scale);var h=this.size.yLine,d=this._getColor(a),l=o(d,2),u=l[0],c=l[1],p=this._setAlignment(t,i,h,s),f=o(p,2);i=f[0],h=f[1],t.font=(e?"bold ":"")+r+"px "+this.options.font.face,t.fillStyle=u,t.textAlign="center",this.options.font.strokeWidth>0&&(t.lineWidth=this.options.font.strokeWidth,t.strokeStyle=c,t.lineJoin="round");for(var m=0;m0&&t.strokeText(this.lines[m],i,h),t.fillText(this.lines[m],i,h),h+=r}},{key:"_setAlignment",value:function(t,e,i,o){if("horizontal"!==this.options.font.align){e=0,i=0;var n=2;"top"===this.options.font.align?(t.textBaseline="alphabetic",i-=2*n):"bottom"===this.options.font.align?(t.textBaseline="hanging",i+=2*n):t.textBaseline="middle"}else t.textBaseline=o;return[e,i]}},{key:"_getColor",value:function(t){var e=this.options.font.color||"#000000",i=this.options.font.strokeColor||"#ffffff";if(t<=this.options.scaling.label.drawThreshold){var o=Math.max(0,Math.min(1,1-(this.options.scaling.label.drawThreshold-t)));e=r.overrideOpacity(e,o),i=r.overrideOpacity(i,o)}return[e,i]}},{key:"getTextSize",value:function(t){var e=void 0===arguments[1]?!1:arguments[1],i={width:this._processLabel(t,e),height:this.options.font.size*this.lineCount,lineCount:this.lineCount};return i}},{key:"calculateLabelSize",value:function(t,e){var i=void 0===arguments[2]?0:arguments[2],o=void 0===arguments[3]?0:arguments[3],n=void 0===arguments[4]?"middle":arguments[4];this.labelDirty===!0&&(this.size.width=this._processLabel(t,e)),this.size.height=this.options.font.size*this.lineCount,this.size.left=i-.5*this.size.width,this.size.top=o-.5*this.size.height,this.size.yLine=o+.5*(1-this.lineCount)*this.options.font.size,"hanging"===n&&(this.size.top+=.5*this.options.font.size,this.size.top+=4,this.size.yLine+=4),this.labelDirty=!1}},{key:"_processLabel",value:function(t,e){var i=0,o=[""],n=0;if(void 0!==this.options.label){o=String(this.options.label).split("\n"),n=o.length,t.font=(e?"bold ":"")+this.options.font.size+"px "+this.options.font.face,i=t.measureText(o[0]).width;for(var s=1;n>s;s++){var r=t.measureText(o[s]).width;i=r>i?r:i}}return this.lines=o,this.lineCount=n,i}}],[{key:"parseOptions",value:function(t,e){var i=void 0===arguments[2]?!1:arguments[2];if("string"==typeof e.font){var o=e.font.split(" ");t.size=o[0].replace("px",""),t.face=o[1],t.color=o[2]}else"object"==typeof e.font&&r.fillIfDefined(t,e.font,i);t.size=Number(t.size)}}]),t}();e["default"]=a,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;ithis.imageObj.height?(o=this.imageObj.width/this.imageObj.height,e=2*this.options.size*o||this.imageObj.width,i=2*this.options.size||this.imageObj.height):(o=this.imageObj.width&&this.imageObj.height?this.imageObj.height/this.imageObj.width:1,e=2*this.options.size||this.imageObj.width,i=2*this.options.size*o||this.imageObj.height),this.width=e,this.height=i,this.radius=.5*this.width}}},{key:"_drawRawCircle",value:function(t,e,i,o,n,s){var r=this.options.borderWidth,a=this.options.borderWidthSelected||2*this.options.borderWidth;t.strokeStyle=o?this.options.color.highlight.border:n?this.options.color.hover.border:this.options.color.border,t.lineWidth=o?a:r,t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.fillStyle=o?this.options.color.highlight.background:n?this.options.color.hover.background:this.options.color.background,t.circle(e,i,s),this.enableShadow(t),t.fill(),this.disableShadow(t),t.stroke()}},{key:"_drawImageAtPosition",value:function(t){0!=this.imageObj.width&&(t.globalAlpha=1,this.enableShadow(t),t.drawImage(this.imageObj,this.left,this.top,this.width,this.height),this.disableShadow(t))}},{key:"_drawImageLabel",value:function(t,e,i,o){var n,s=0;if(void 0!==this.height){s=.5*this.height;var r=this.labelModule.getTextSize(t);r.lineCount>=1&&(s+=r.height/2)}n=i+s,this.options.label&&(this.labelOffset=s),this.labelModule.draw(t,e,n,o,"hanging")}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;ii.shape.height?(r=i.x+.5*i.shape.width,a=i.y-h):(r=i.x+h,a=i.y-.5*i.shape.height),s=this._pointOnCircle(r,a,h,.125),this.labelModule.draw(t,s.x,s.y,n)}}}},{key:"isOverlappingWith",value:function(t){if(this.connected){var e=10,i=this.from.x,o=this.from.y,n=this.to.x,s=this.to.y,r=t.left,a=t.top,h=this.edgeType.getDistanceToEdge(i,o,n,s,r,a);return e>h}return!1}},{key:"_rotateForLabelAlignment",value:function(t){var e=this.from.y-this.to.y,i=this.from.x-this.to.x,o=Math.atan2(e,i);(-1>o&&0>i||o>0&&0>i)&&(o+=Math.PI),t.rotate(o)}},{key:"_pointOnCircle",value:function(t,e,i,o){var n=2*o*Math.PI;return{x:t+i*Math.cos(n),y:e-i*Math.sin(n)}}},{key:"select",value:function(){this.selected=!0}},{key:"unselect",value:function(){this.selected=!1}}],[{key:"parseOptions",value:function(t,e){var i=void 0===arguments[2]?!1:arguments[2],o=["id","from","hidden","hoverWidth","label","length","line","opacity","physics","selectionWidth","selfReferenceSize","to","title","value","width"];if(f.selectiveDeepExtend(o,t,e,i),f.mergeOptions(t,e,"smooth"),f.mergeOptions(t,e,"shadow"),void 0!==e.dashes&&null!==e.dashes?t.dashes=e.dashes:i===!0&&null===e.dashes&&(t.dashes=void 0,delete t.dashes),void 0!==e.scaling&&null!==e.scaling?(void 0!==e.scaling.min&&(t.scaling.min=e.scaling.min),void 0!==e.scaling.max&&(t.scaling.max=e.scaling.max),f.mergeOptions(t.scaling,e.scaling,"label")):i===!0&&null===e.scaling&&(t.scaling=void 0,delete t.scaling),void 0!==e.arrows&&null!==e.arrows)if("string"==typeof e.arrows){var n=e.arrows.toLowerCase();-1!=n.indexOf("to")&&(t.arrows.to.enabled=!0),-1!=n.indexOf("middle")&&(t.arrows.middle.enabled=!0),-1!=n.indexOf("from")&&(t.arrows.from.enabled=!0)}else{if("object"!=typeof e.arrows)throw new Error("The arrow newOptions can only be an object or a string. Refer to the documentation. You used:"+JSON.stringify(e.arrows));f.mergeOptions(t.arrows,e.arrows,"to"),f.mergeOptions(t.arrows,e.arrows,"middle"),f.mergeOptions(t.arrows,e.arrows,"from")}else i===!0&&null===e.arrows&&(t.arrows=void 0,delete t.arrows);if(void 0!==e.color&&null!==e.color)if(f.isString(e.color))t.color.color=e.color,t.color.highlight=e.color,t.color.hover=e.color,t.color.inherit=!1;else{var s=!1;void 0!==e.color.color&&(t.color.color=e.color.color,s=!0),void 0!==e.color.highlight&&(t.color.highlight=e.color.highlight,s=!0),void 0!==e.color.hover&&(t.color.hover=e.color.hover,s=!0),void 0!==e.color.inherit&&(t.color.inherit=e.color.inherit),void 0!==e.color.opacity&&(t.color.opacity=Math.min(1,Math.max(0,e.color.opacity))),void 0===e.color.inherit&&s===!0&&(t.color.inherit=!1)}else i===!0&&null===e.color&&(t.color=void 0,delete t.color);void 0!==e.font&&a["default"].parseOptions(t.font,e)}}]),t}();e["default"]=m,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i=l&&h>d;){var m=.5*(l+u);if(i=this.getPoint(m,a),o=Math.atan2(p.y-i.y,p.x-i.x),n=p.distanceToBorder(e,o),s=Math.sqrt(Math.pow(i.x-p.x,2)+Math.pow(i.y-p.y,2)),r=n-s,Math.abs(r)r?f===!1?l=m:u=m:f===!1?u=m:l=m,d++}return i.t=m,i}},{key:"_getDistanceToBezierEdge",value:function(t,e,i,o,n,s,r){var a=void 0,h=void 0;a=r.x,h=r.y;var d=1e9,l=void 0,u=void 0,c=void 0,p=void 0,f=void 0,m=t,v=e;for(u=1;10>u;u++)c=.1*u,p=Math.pow(1-c,2)*t+2*c*(1-c)*a+Math.pow(c,2)*i,f=Math.pow(1-c,2)*e+2*c*(1-c)*h+Math.pow(c,2)*o,u>0&&(l=this._getDistanceToLine(m,v,p,f,n,s),d=d>l?l:d),m=p,v=f;return d}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t,e){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t)){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(h){n=!0,s=h}finally{try{!o&&a["return"]&&a["return"]()}finally{if(n)throw s}}return i}throw new TypeError("Invalid attempt to destructure non-iterable instance")}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;io.shape.height?(e=o.x+.5*o.shape.width,i=o.y-n):(e=o.x+n,i=o.y-.5*o.shape.height),[e,i,n]}},{key:"_pointOnCircle",value:function(t,e,i,o){var n=2*o*Math.PI;return{x:t+i*Math.cos(n),y:e-i*Math.sin(n)}}},{key:"_findBorderPositionCircle",value:function(t,e,i){for(var o=i.x,n=i.y,s=i.low,r=i.high,a=i.direction,h=10,d=0,l=this.options.selfReferenceSize,u=void 0,c=void 0,p=void 0,f=void 0,m=void 0,v=.05,g=.5*(s+r);r>=s&&h>d&&(g=.5*(s+r),u=this._pointOnCircle(o,n,l,g),c=Math.atan2(t.y-u.y,t.x-u.x),p=t.distanceToBorder(e,c),f=Math.sqrt(Math.pow(u.x-t.x,2)+Math.pow(u.y-t.y,2)),m=p-f,!(Math.abs(m)0?a>0?s=g:r=g:a>0?r=g:s=g,d++;return u.t=g,u}},{key:"getLineWidth",value:function(t,e){return t===!0?Math.max(this.selectionWidth,.3/this.body.view.scale):e===!0?Math.max(this.hoverWidth,.3/this.body.view.scale):Math.max(this.options.width,.3/this.body.view.scale)}},{key:"getColor",value:function(t,e,i){var o=this.options.color;if(o.inherit!==!1){if("both"===o.inherit&&this.from.id!==this.to.id){var n=t.createLinearGradient(this.from.x,this.from.y,this.to.x,this.to.y),s=void 0,a=void 0;return s=this.from.options.color.highlight.border,a=this.to.options.color.highlight.border,this.from.selected===!1&&this.to.selected===!1?(s=r.overrideOpacity(this.from.options.color.border,this.options.color.opacity),a=r.overrideOpacity(this.to.options.color.border,this.options.color.opacity)):this.from.selected===!0&&this.to.selected===!1?a=this.to.options.color.border:this.from.selected===!1&&this.to.selected===!0&&(s=this.from.options.color.border),n.addColorStop(0,s),n.addColorStop(1,a),n}this.colorDirty===!0&&("to"===o.inherit?(this.color.highlight=this.to.options.color.highlight.border,this.color.hover=this.to.options.color.hover.border,this.color.color=r.overrideOpacity(this.to.options.color.border,o.opacity)):(this.color.highlight=this.from.options.color.highlight.border,this.color.hover=this.from.options.color.hover.border,this.color.color=r.overrideOpacity(this.from.options.color.border,o.opacity)))}else this.colorDirty===!0&&(this.color.highlight=o.highlight,this.color.hover=o.hover,this.color.color=r.overrideOpacity(o.color,o.opacity));return this.colorDirty=!1,e===!0?this.color.highlight:i===!0?this.color.hover:this.color.color}},{key:"_circle",value:function(t,e,i,o){this.enableShadow(t),t.beginPath(),t.arc(e,i,o,0,2*Math.PI,!1),t.stroke(),this.disableShadow(t)}},{key:"getDistanceToEdge",value:function(t,e,i,n,s,r,a){var h=0;if(this.from!=this.to)h=this._getDistanceToEdge(t,e,i,n,s,r,a);else{var d=this._getCircleData(),l=o(d,3),u=l[0],c=l[1],p=l[2],f=u-s,m=c-r;h=Math.abs(Math.sqrt(f*f+m*m)-p)}return this.labelModule.size.lefts&&this.labelModule.size.topr?0:h}},{key:"_getDistanceToLine",value:function(t,e,i,o,n,s){var r=i-t,a=o-e,h=r*r+a*a,d=((n-t)*r+(s-e)*a)/h;d>1?d=1:0>d&&(d=0);var l=t+d*r,u=e+d*a,c=l-n,p=u-s;return Math.sqrt(c*c+p*p)}},{key:"drawArrowHead",value:function(t,e,i,n,s){t.strokeStyle=this.getColor(t,n,s),t.fillStyle=t.strokeStyle,t.lineWidth=this.getLineWidth(n,s);var r=void 0,a=void 0,h=void 0,d=void 0,l=void 0,u=void 0,c=void 0;if("from"===e?(d=this.from,l=this.to,u=.1,c=this.options.arrows.from.scaleFactor):"to"===e?(d=this.to,l=this.from,u=-.1,c=this.options.arrows.to.scaleFactor):(d=this.to,l=this.from,c=this.options.arrows.middle.scaleFactor),d!=l){if("middle"!==e)if(this.options.smooth.enabled===!0){h=this.findBorderPosition(d,t,{via:i});var p=this.getPoint(Math.max(0,Math.min(1,h.t+u)),i);r=Math.atan2(h.y-p.y,h.x-p.x)}else r=Math.atan2(d.y-l.y,d.x-l.x),h=this.findBorderPosition(d,t);else r=Math.atan2(d.y-l.y,d.x-l.x),h=this.getPoint(.6,i);a=(10+5*this.options.width)*c,t.arrow(h.x,h.y,r,a),this.enableShadow(t),t.fill(),this.disableShadow(t),t.stroke()}else{var f=void 0,m=void 0,v=this._getCircleData(t),g=o(v,3),y=g[0],b=g[1],w=g[2];"from"===e?(m=this.findBorderPosition(this.from,t,{x:y,y:b,low:.25,high:.6,direction:-1}),f=-2*m.t*Math.PI+1.5*Math.PI+.1*Math.PI):"to"===e?(m=this.findBorderPosition(this.from,t,{x:y,y:b,low:.6,high:1,direction:1}),f=-2*m.t*Math.PI+1.5*Math.PI-1.1*Math.PI):(m=this._pointOnCircle(y,b,w,.175),f=3.9269908169872414);var _=(10+5*this.options.width)*c;t.arrow(m.x,m.y,f,_),this.enableShadow(t),t.fill(),this.disableShadow(t),t.stroke()}}},{key:"enableShadow",value:function(t){this.options.shadow.enabled===!0&&(t.shadowColor="rgba(0,0,0,0.5)",t.shadowBlur=this.options.shadow.size,t.shadowOffsetX=this.options.shadow.x,t.shadowOffsetY=this.options.shadow.y)}},{key:"disableShadow",value:function(t){this.options.shadow.enabled===!0&&(t.shadowColor="rgba(0,0,0,0)",t.shadowBlur=0,t.shadowOffsetX=0,t.shadowOffsetY=0)}}]),t}();e["default"]=a,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;ithis.to.y?this.from.xthis.to.x&&(t=this.from.x-i*s,e=this.from.y-i*s):this.from.ythis.to.x&&(t=this.from.x-i*s,e=this.from.y+i*s)),"discrete"===o&&(t=i*s>n?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*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"===o&&(e=i*n>s?this.from.y:e));else if("straightCross"===o)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*s,e=this.from.y-i*s,t=this.to.x>t?this.to.x:t):this.from.ythis.to.x&&(t=this.from.x-i*s,e=this.from.y+i*s,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*n,e=this.from.y-i*n,e=this.to.y>e?this.to.y:e):this.from.ythis.to.x&&(t=this.from.x-i*n,e=this.from.y+i*n,e=this.to.y1&&(this.startedStabilization=!1),this.stopSimulation())}},{key:"_emitStabilized",value:function(){var t=this;this.stabilizationIterations>1&&setTimeout(function(){t.body.emitter.emit("stabilized",{iterations:t.stabilizationIterations}),t.stabilizationIterations=0},0)}},{key:"physicsTick",value:function(){this.stabilized===!1&&(this.calculateForces(),this.stabilized=this.moveNodes(),this.stabilized===!0?this.revert():this.startedStabilization===!1&&(this.body.emitter.emit("startStabilizing"),this.startedStabilization=!0),this.stabilizationIterations++)}},{key:"updatePhysicsData",value:function(){this.physicsBody.forces={},this.physicsBody.physicsNodeIndices=[],this.physicsBody.physicsEdgeIndices=[];var t=this.body.nodes,e=this.body.edges;for(var i in t)t.hasOwnProperty(i)&&t[i].options.physics===!0&&this.physicsBody.physicsNodeIndices.push(i);for(var o in e)e.hasOwnProperty(o)&&e[o].options.physics===!0&&this.physicsBody.physicsEdgeIndices.push(o);for(var n=0;na&&o===!0,t=!0}return t===!0?n>.5*this.options.maxVelocity?!1:o:!0}},{key:"_performStep",value:function(t,e){var i=this.body.nodes[t],o=this.options.timestep,n=this.physicsBody.forces,s=this.physicsBody.velocities;if(this.previousStates[t]={x:i.x,y:i.y,vx:s[t].x,vy:s[t].y},i.options.fixed.x===!1){var r=this.modelOptions.damping*s[t].x,a=(n[t].x-r)/i.options.mass;s[t].x+=a*o,s[t].x=Math.abs(s[t].x)>e?s[t].x>0?e:-e:s[t].x,i.x+=s[t].x*o}else n[t].x=0,s[t].x=0;if(i.options.fixed.y===!1){var h=this.modelOptions.damping*s[t].y,d=(n[t].y-h)/i.options.mass;s[t].y+=d*o,s[t].y=Math.abs(s[t].y)>e?s[t].y>0?e:-e:s[t].y,i.y+=s[t].y*o}else n[t].y=0,s[t].y=0;var l=Math.sqrt(Math.pow(s[t].x,2)+Math.pow(s[t].y,2));return l}},{key:"calculateForces",value:function(){this.gravitySolver.solve(),this.nodesSolver.solve(),this.edgesSolver.solve()}},{key:"_freezeNodes",value:function(){var t=this.body.nodes;for(var e in t)t.hasOwnProperty(e)&&t[e].x&&t[e].y&&(this.freezeCache[e]={x:t[e].options.fixed.x,y:t[e].options.fixed.y},t[e].options.fixed.x=!0,t[e].options.fixed.y=!0)}},{key:"_restoreFrozenNodes",value:function(){var t=this.body.nodes;for(var e in t)t.hasOwnProperty(e)&&void 0!==this.freezeCache[e]&&(t[e].options.fixed.x=this.freezeCache[e].x,t[e].options.fixed.y=this.freezeCache[e].y);this.freezeCache={}}},{key:"stabilize",value:function(){var t=this,e=void 0===arguments[0]?this.options.stabilization.iterations:arguments[0];"number"!=typeof e&&(console.log("The stabilize method needs a numeric amount of iterations. Switching to default: ",this.options.stabilization.iterations),e=this.options.stabilization.iterations),this.body.emitter.emit("_resizeNodes"),this.stopSimulation(),this.stabilized=!1,this.body.emitter.emit("_blockRedrawRequests"),this.targetIterations=e,this.options.stabilization.onlyDynamicEdges===!0&&this._freezeNodes(),this.stabilizationIterations=0,setTimeout(function(){return t._stabilizationBatch()},0)}},{key:"_stabilizationBatch",value:function(){for(var t=0;this.stabilized===!1&&t0){var t=void 0,e=this.body.nodes,i=this.physicsBody.physicsNodeIndices,o=i.length,n=this._formBarnesHutTree(e,i);this.barnesHutTree=n;for(var s=0;o>s;s++)t=e[i[s]],t.options.mass>0&&(this._getForceContribution(n.root.children.NW,t),this._getForceContribution(n.root.children.NE,t),this._getForceContribution(n.root.children.SW,t),this._getForceContribution(n.root.children.SE,t))}}},{key:"_getForceContribution",value:function(t,e){if(t.childrenCount>0){var i=void 0,o=void 0,n=void 0;i=t.centerOfMass.x-e.x,o=t.centerOfMass.y-e.y,n=Math.sqrt(i*i+o*o),n*t.calcSize>this.thetaInversed?this._calculateForces(n,i,o,e,t):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)):t.children.data.id!=e.id&&this._calculateForces(n,i,o,e,t)}}},{key:"_calculateForces",value:function(t,e,i,o,n){0===t&&(t=.1,e=t),this.overlapAvoidanceFactor<1&&(t=Math.max(.1+this.overlapAvoidanceFactor*o.shape.radius,t-o.shape.radius));var s=this.options.gravitationalConstant*n.mass*o.options.mass/Math.pow(t,3),r=e*s,a=i*s;this.physicsBody.forces[o.id].x+=r,this.physicsBody.forces[o.id].y+=a}},{key:"_formBarnesHutTree",value:function(t,e){for(var i=void 0,o=e.length,n=t[e[0]].x,s=t[e[0]].y,r=t[e[0]].x,a=t[e[0]].y,h=1;o>h;h++){var d=t[e[h]].x,l=t[e[h]].y;t[e[h]].options.mass>0&&(n>d&&(n=d),d>r&&(r=d),s>l&&(s=l),l>a&&(a=l))}var u=Math.abs(r-n)-Math.abs(a-s);u>0?(s-=.5*u,a+=.5*u):(n+=.5*u,r-=.5*u);var c=1e-5,p=Math.max(c,Math.abs(r-n)),f=.5*p,m=.5*(n+r),v=.5*(s+a),g={root:{centerOfMass:{x:0,y:0},mass:0,range:{minX:m-f,maxX:m+f,minY:v-f,maxY:v+f},size:p,calcSize:1/p,children:{data:null},maxWidth:0,level:0,childrenCount:4}};this._splitBranch(g.root);for(var h=0;o>h;h++)i=t[e[h]],i.options.mass>0&&this._placeInTree(g.root,i);return g}},{key:"_updateBranchMass",value:function(t,e){var i=t.mass+e.options.mass,o=1/i;t.centerOfMass.x=t.centerOfMass.x*t.mass+e.x*e.options.mass,t.centerOfMass.x*=o,t.centerOfMass.y=t.centerOfMass.y*t.mass+e.y*e.options.mass,t.centerOfMass.y*=o,t.mass=i;var n=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")}},{key:"_placeInRegion",value: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+=.1,e.y+=.1):(this._splitBranch(t.children[i]),this._placeInTree(t.children[i],e));break;case 4:this._placeInTree(t.children[i],e)}}},{key:"_splitBranch",value: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)}},{key:"_insertRegion",value:function(t,e){var i=void 0,o=void 0,n=void 0,s=void 0,r=.5*t.size;switch(e){case"NW":i=t.range.minX,o=t.range.minX+r,n=t.range.minY,s=t.range.minY+r;break;case"NE":i=t.range.minX+r,o=t.range.maxX,n=t.range.minY,s=t.range.minY+r;break;case"SW":i=t.range.minX,o=t.range.minX+r,n=t.range.minY+r,s=t.range.maxY;break;case"SE":i=t.range.minX+r,o=t.range.maxX,n=t.range.minY+r,s=t.range.maxY}t.children[e]={centerOfMass:{x:0,y:0},mass:0,range:{minX:i,maxX:o,minY:n,maxY:s},size:.5*t.size,calcSize:2*t.calcSize,children:{data:null},maxWidth:0,level:t.level+1,childrenCount:0}}},{key:"_debug",value:function(t,e){void 0!==this.barnesHutTree&&(t.lineWidth=1,this._drawBranch(this.barnesHutTree.root,t,e))}},{key:"_drawBranch",value: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()}}]),t}();e["default"]=s,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;ii&&(s=.5*u>i?1:c*i+p,s/=i,o=t*s,n=e*s,l[r.id].x-=o,l[r.id].y-=n,l[a.id].x+=o,l[a.id].y+=n)}}}]),t}();e["default"]=s,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;ii?-Math.pow(f*i,2)+Math.pow(f*p,2):0,0===i?i=.01:s/=i,o=t*s,n=e*s,c[r.id].x-=o,c[r.id].y-=n,c[a.id].x+=o,c[a.id].y+=n}}}]),t}();e["default"]=s,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;i0){var s=n.edges.length+1,r=this.options.centralGravity*s*n.options.mass;o[n.id].x=e*r,o[n.id].y=i*r}}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;i=t&&i.push(n.id)}for(var o=0;o0&&Object.keys(s).length>0&&i.push({nodes:n,edges:s})}}}for(var o=0;oo?r.x:o,n=r.ys?r.y:s;return{x:.5*(i+o),y:.5*(n+s)}}},{key:"openCluster",value:function(t){var e=void 0===arguments[1]?!0:arguments[1];if(void 0===t)throw new Error("No clusterNodeId supplied to openCluster.");if(void 0===this.body.nodes[t])throw new Error("The clusterNodeId supplied to openCluster does not exist.");if(void 0===this.body.nodes[t].containedNodes)return void console.log("The node:"+t+" is not a cluster.");var i=this.body.nodes[t],o=i.containedNodes,n=i.containedEdges;for(var s in o)if(o.hasOwnProperty(s)){var r=this.body.nodes[s];r=o[s],r.x=i.x,r.y=i.y,r.vx=i.vx,r.vy=i.vy,r.options.hidden=!1,r.togglePhysics(!0),delete this.clusteredNodes[s]}for(var a in n)if(n.hasOwnProperty(a)){var d=n[a];if(void 0===this.body.nodes[d.fromId]||void 0===this.body.nodes[d.toId])d.edgeType.cleanup(),d.disconnect(),delete this.body.edges[a];else if(void 0!==this.clusteredNodes[d.fromId]||void 0!==this.clusteredNodes[d.toId]){var l=void 0,u=void 0,c=this.clusteredNodes[d.fromId]||this.clusteredNodes[d.toId],p=c.clusterId,f=this.body.nodes[p];if(f.containedEdges[a]=d,void 0!==this.clusteredNodes[d.fromId]?(l=p,u=d.toId):(l=d.fromId,u=p),this.body.nodes[l].options.hidden!==!0&&this.body.nodes[u].options.hidden!==!0){var m=this._cloneOptions(d,"edge"),v="clusterEdge:"+h.randomUUID();h.deepExtend(m,f.clusterEdgeProperties),h.deepExtend(m,{from:l,to:u,hidden:!1,physics:!0,id:v});var g=this.body.functions.createEdge(m);this.body.edges[v]=g,this.body.edges[v].connect()}}else d.options.hidden=!1,d.togglePhysics(!0)}for(var y=0;yo;)e.push(this.clusteredNodes[t].node),t=this.clusteredNodes[t].clusterId,o++;return e.push(this.body.nodes[t]),e}},{key:"_getConnectedId",value:function(t,e){return t.toId!=e?t.toId:t.fromId!=e?t.fromId:t.fromId}},{key:"_getHubSize",value:function(){for(var t=0,e=0,i=0,o=0,n=0;no&&(o=s.edges.length),t+=s.edges.length,e+=Math.pow(s.edges.length,2),i+=1}t/=i,e/=i;var r=e-Math.pow(t,2),a=Math.sqrt(r),h=Math.floor(t+2*a);return h>o&&(h=o),h}}]),t}();e["default"]=d,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(t,e,i){for(var o=!0;o;){var n=t,s=e,r=i;a=d=h=void 0,o=!1;var a=Object.getOwnPropertyDescriptor(n,s);if(void 0!==a){if("value"in a)return a.value;var h=a.get;return void 0===h?void 0:h.call(r)}var d=Object.getPrototypeOf(n);if(null===d)return void 0;t=d,e=s,i=r,o=!0}},a=i(62),h=o(a),d=function(t){function e(t,i,o,s,a){n(this,e),r(Object.getPrototypeOf(e.prototype),"constructor",this).call(this,t,i,o,s,a),this.isCluster=!0,this.containedNodes={},this.containedEdges={}}return s(e,t),e}(h["default"]);e["default"]=d,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;i0,t.renderTimer=void 0}),this.body.emitter.on("destroy",function(){t.renderRequests=0,t.renderingActive=!1,t.requiresTimeout===!0?clearTimeout(t.renderTimer):cancelAnimationFrame(t.renderTimer),t.body.emitter.off()})}},{key:"setOptions",value:function(t){if(void 0!==t){var e=["hideEdgesOnDrag","hideNodesOnDrag"];s.selectiveDeepExtend(e,this.options,t)}}},{key:"_startRendering",value:function(){this.renderingActive===!0&&void 0===this.renderTimer&&(this.requiresTimeout===!0?this.renderTimer=window.setTimeout(this._renderStep.bind(this),this.simulationInterval):this.renderTimer=window.requestAnimationFrame(this._renderStep.bind(this)))}},{key:"_renderStep",value:function(){this.renderingActive===!0&&(this.renderTimer=void 0,this.requiresTimeout===!0&&this._startRendering(),this._redraw(),this.requiresTimeout===!1&&this._startRendering())}},{key:"redraw",value:function(){this.body.emitter.emit("setSize"),this._redraw()}},{key:"_requestRedraw",value:function(){this.redrawRequested!==!0&&this.renderingActive===!1&&this.allowRedrawRequests===!0&&(this.redrawRequested=!0,this.requiresTimeout===!0?window.setTimeout(this._redraw.bind(this,!1),0):window.requestAnimationFrame(this._redraw.bind(this,!1)))}},{key:"_redraw",value:function(){var t=void 0===arguments[0]?!1:arguments[0];this.body.emitter.emit("initRedraw"),this.redrawRequested=!1;var e=this.canvas.frame.canvas.getContext("2d");(0===this.canvas.frame.canvas.width||0===this.canvas.frame.canvas.height)&&this.canvas.setSize(),void 0===this.pixelRatio&&(this.pixelRatio=(window.devicePixelRatio||1)/(e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1)),e.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);var i=this.canvas.frame.canvas.clientWidth,o=this.canvas.frame.canvas.clientHeight;e.clearRect(0,0,i,o),e.save(),e.translate(this.body.view.translation.x,this.body.view.translation.y),e.scale(this.body.view.scale,this.body.view.scale),e.beginPath(),this.body.emitter.emit("beforeDrawing",e),e.closePath(),t===!1&&(this.dragging===!1||this.dragging===!0&&this.options.hideEdgesOnDrag===!1)&&this._drawEdges(e),(this.dragging===!1||this.dragging===!0&&this.options.hideNodesOnDrag===!1)&&this._drawNodes(e,t),this.controlNodesActive===!0&&this._drawControlNodes(e),e.beginPath(),this.body.emitter.emit("afterDrawing",e),e.closePath(),e.restore(),t===!0&&e.clearRect(0,0,i,o)}},{key:"_resizeNodes",value:function(){var t=this.canvas.frame.canvas.getContext("2d");void 0===this.pixelRatio&&(this.pixelRatio=(window.devicePixelRatio||1)/(t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1)),t.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0),t.save(),t.translate(this.body.view.translation.x,this.body.view.translation.y),t.scale(this.body.view.scale,this.body.view.scale);var e=this.body.nodes,i=void 0;for(var o in e)e.hasOwnProperty(o)&&(i=e[o],i.resize(t),i.updateBoundingBox(t));t.restore()}},{key:"_drawNodes",value:function(t){for(var e=void 0===arguments[1]?!1:arguments[1],i=this.body.nodes,o=this.body.nodeIndices,n=void 0,s=[],r=20,a=this.canvas.DOMtoCanvas({x:-r,y:-r}),h=this.canvas.DOMtoCanvas({x:this.canvas.frame.canvas.clientWidth+r,y:this.canvas.frame.canvas.clientHeight+r}),d={top:a.y,left:a.x,bottom:h.y,right:h.x},l=0;l0)for(var r=0;rt.shape.boundingBox.left&&(n=t.shape.boundingBox.left),st.shape.boundingBox.top&&(i=t.shape.boundingBox.top),ot.shape.boundingBox.left&&(n=t.shape.boundingBox.left),st.shape.boundingBox.top&&(i=t.shape.boundingBox.top),o.5*this.body.nodeIndices.length)return void this.fit(i,!1);t=this._getRange(i.nodes);var a=this.body.nodeIndices.length;e=12.662/(a+7.4147)+.0964822;var h=Math.min(this.canvas.frame.canvas.clientWidth/600,this.canvas.frame.canvas.clientHeight/600);e*=h}else{this.body.emitter.emit("_resizeNodes"),t=this._getRange(i.nodes);var d=1.1*Math.abs(t.maxX-t.minX),l=1.1*Math.abs(t.maxY-t.minY),u=this.canvas.frame.canvas.clientWidth/d,c=this.canvas.frame.canvas.clientHeight/l;e=c>=u?u:c}e>1?e=1:0===e&&(e=1);var p=this._findCenter(t),f={position:p,scale:e,animation:i.animation};this.moveTo(f)}},{key:"focus",value:function(t){var e=void 0===arguments[1]?{}:arguments[1];if(void 0!==this.body.nodes[t]){var i={x:this.body.nodes[t].x,y:this.body.nodes[t].y};e.position=i,e.lockedOnNode=t,this.moveTo(e)}else console.log("Node: "+t+" cannot be found.")}},{key:"moveTo",value:function(t){return void 0===t?void(t={}):(void 0===t.offset&&(t.offset={x:0,y:0}),void 0===t.offset.x&&(t.offset.x=0),void 0===t.offset.y&&(t.offset.y=0),void 0===t.scale&&(t.scale=this.body.view.scale),void 0===t.position&&(t.position=this.getViewPosition()),void 0===t.animation&&(t.animation={duration:0}),t.animation===!1&&(t.animation={duration:0}),t.animation===!0&&(t.animation={}),void 0===t.animation.duration&&(t.animation.duration=1e3),void 0===t.animation.easingFunction&&(t.animation.easingFunction="easeInOutQuad"),void this.animateView(t))}},{key:"animateView",value:function(t){if(void 0!==t){this.animationEasingFunction=t.animation.easingFunction,this.releaseNode(),t.locked===!0&&(this.lockedOnNodeId=t.lockedOnNode,this.lockedOnNodeOffset=t.offset),0!=this.easingTime&&this._transitionRedraw(!0),this.sourceScale=this.body.view.scale,this.sourceTranslation=this.body.view.translation,this.targetScale=t.scale,this.body.view.scale=this.targetScale;var e=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight}),i={x:e.x-t.position.x,y:e.y-t.position.y};this.targetTranslation={x:this.sourceTranslation.x+i.x*this.targetScale+t.offset.x,y:this.sourceTranslation.y+i.y*this.targetScale+t.offset.y},0===t.animation.duration?void 0!=this.lockedOnNodeId?(this.viewFunction=this._lockedRedraw.bind(this),this.body.emitter.on("initRedraw",this.viewFunction)):(this.body.view.scale=this.targetScale,this.body.view.translation=this.targetTranslation,this.body.emitter.emit("_requestRedraw")):(this.animationSpeed=1/(60*t.animation.duration*.001)||1/60,this.animationEasingFunction=t.animation.easingFunction,this.viewFunction=this._transitionRedraw.bind(this),this.body.emitter.on("initRedraw",this.viewFunction),this.body.emitter.emit("_startRendering"))}}},{key:"_lockedRedraw",value:function(){var t={x:this.body.nodes[this.lockedOnNodeId].x,y:this.body.nodes[this.lockedOnNodeId].y},e=this.DOMtoCanvas({x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight}),i={x:e.x-t.x,y:e.y-t.y},o=this.body.view.translation,n={x:o.x+i.x*this.body.view.scale+this.lockedOnNodeOffset.x,y:o.y+i.y*this.body.view.scale+this.lockedOnNodeOffset.y};this.body.view.translation=n}},{key:"releaseNode",value:function(){void 0!==this.lockedOnNodeId&&void 0!==this.viewFunction&&(this.body.emitter.off("initRedraw",this.viewFunction),this.lockedOnNodeId=void 0,this.lockedOnNodeOffset=void 0)}},{key:"_transitionRedraw",value:function(){var t=void 0===arguments[0]?!1:arguments[0];this.easingTime+=this.animationSpeed,this.easingTime=t===!0?1:this.easingTime;var e=s.easingFunctions[this.animationEasingFunction](this.easingTime);this.body.view.scale=this.sourceScale+(this.targetScale-this.sourceScale)*e,this.body.view.translation={x:this.sourceTranslation.x+(this.targetTranslation.x-this.sourceTranslation.x)*e,y:this.sourceTranslation.y+(this.targetTranslation.y-this.sourceTranslation.y)*e},this.easingTime>=1&&(this.body.emitter.off("initRedraw",this.viewFunction),this.easingTime=0,void 0!=this.lockedOnNodeId&&(this.viewFunction=this._lockedRedraw.bind(this),this.body.emitter.on("initRedraw",this.viewFunction)),this.body.emitter.emit("animationFinished"))}},{key:"getScale",value:function(){return this.body.view.scale}},{key:"getViewPosition",value:function(){return this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight})}}]),t}();e["default"]=r,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;i50&&(this.drag.pointer=this.getPointer(t.center),this.drag.pinched=!1,this.pinch.scale=this.body.view.scale,this.touchTime=(new Date).valueOf())}},{key:"onTap",value:function(t){var e=this.getPointer(t.center),i=this.selectionHandler.options.multiselect&&(t.changedPointers[0].ctrlKey||t.changedPointers[0].metaKey);this.checkSelectionChanges(e,t,i),this.selectionHandler._generateClickEvent("click",t,e)}},{key:"onDoubleTap",value:function(t){var e=this.getPointer(t.center);this.selectionHandler._generateClickEvent("doubleClick",t,e)}},{key:"onHold",value:function(t){var e=this.getPointer(t.center),i=this.selectionHandler.options.multiselect;this.checkSelectionChanges(e,t,i),this.selectionHandler._generateClickEvent("click",t,e),this.selectionHandler._generateClickEvent("hold",t,e)}},{key:"onRelease",value:function(t){if((new Date).valueOf()-this.touchTime>10){var e=this.getPointer(t.center);this.selectionHandler._generateClickEvent("release",t,e),this.touchTime=(new Date).valueOf()}}},{key:"onContext",value:function(t){var e=this.getPointer({x:t.clientX,y:t.clientY});this.selectionHandler._generateClickEvent("oncontext",t,e)}},{key:"checkSelectionChanges",value:function(t,e){var i=void 0===arguments[2]?!1:arguments[2],o=this.selectionHandler._getSelectedEdgeCount(),n=this.selectionHandler._getSelectedNodeCount(),s=this.selectionHandler.getSelection(),r=void 0;r=i===!0?this.selectionHandler.selectAdditionalOnPoint(t):this.selectionHandler.selectOnPoint(t);var a=this.selectionHandler._getSelectedEdgeCount(),h=this.selectionHandler._getSelectedNodeCount(),d=this.selectionHandler.getSelection(),l=this._determineIfDifferent(s,d),u=l.nodesChanges,c=l.edgesChanges;h-n>0?(this.selectionHandler._generateClickEvent("selectNode",e,t),r=!0):0>h-n?(this.selectionHandler._generateClickEvent("deselectNode",e,t,s),r=!0):h===n&&u===!0&&(this.selectionHandler._generateClickEvent("deselectNode",e,t,s),this.selectionHandler._generateClickEvent("selectNode",e,t),r=!0),a-o>0?(this.selectionHandler._generateClickEvent("selectEdge",e,t),r=!0):0>a-o?(this.selectionHandler._generateClickEvent("deselectEdge",e,t,s),r=!0):a===o&&c===!0&&(this.selectionHandler._generateClickEvent("deselectEdge",e,t,s),this.selectionHandler._generateClickEvent("selectEdge",e,t),r=!0),r===!0&&this.selectionHandler._generateClickEvent("select",e,t)}},{key:"_determineIfDifferent",value:function(t,e){for(var i=!1,o=!1,n=0;nt&&(t=1e-5),t>10&&(t=10);var o=void 0;void 0!==this.drag&&this.drag.dragging===!0&&(o=this.canvas.DOMtoCanvas(this.drag.pointer));var n=this.body.view.translation,s=t/i,r=(1-s)*e.x+n.x*s,a=(1-s)*e.y+n.y*s;if(this.body.view.scale=t,this.body.view.translation={x:r,y:a},void 0!=o){var h=this.canvas.canvasToDOM(o);this.drag.pointer.x=h.x,this.drag.pointer.y=h.y}this.body.emitter.emit("_requestRedraw"),t>i?this.body.emitter.emit("zoom",{direction:"+",scale:this.body.view.scale}):this.body.emitter.emit("zoom",{direction:"-",scale:this.body.view.scale})}}},{key:"onMouseWheel",value:function(t){var e=0;if(t.wheelDelta?e=t.wheelDelta/120:t.detail&&(e=-t.detail/3),0!==e){var i=this.body.view.scale,o=e/10;0>e&&(o/=1-o),i*=1+o;var n=this.getPointer({x:t.clientX,y:t.clientY});this.zoom(i,n)}t.preventDefault()}},{key:"onMouseMove",value:function(t){var e=this,i=this.getPointer({x:t.clientX,y:t.clientY}),o=!1;if(void 0!==this.popup&&(this.popup.hidden===!1&&this._checkHidePopup(i),this.popup.hidden===!1&&(o=!0,this.popup.setPosition(i.x+3,i.y-5),this.popup.show())),this.options.keyboard.bindToWindow===!1&&this.options.keyboard.enabled===!0&&this.canvas.frame.focus(),o===!1&&(void 0!==this.popupTimer&&(clearInterval(this.popupTimer),this.popupTimer=void 0),this.drag.dragging||(this.popupTimer=setTimeout(function(){return e._checkShowPopup(i)},this.options.tooltipDelay))),this.options.hover===!0){var n=this.selectionHandler.getNodeAt(i);void 0===n&&(n=this.selectionHandler.getEdgeAt(i)),this.selectionHandler.hoverObject(n)}}},{key:"_checkShowPopup",value:function(t){var e=this.canvas._XconvertDOMtoCanvas(t.x),i=this.canvas._YconvertDOMtoCanvas(t.y),o={left:e,top:i,right:e,bottom:i},n=void 0===this.popupObj?void 0:this.popupObj.id,s=!1,r="node";if(void 0===this.popupObj){for(var a=this.body.nodeIndices,h=this.body.nodes,l=void 0,u=[],c=0;c0&&(this.popupObj=h[u[u.length-1]],s=!0)}if(void 0===this.popupObj&&s===!1){for(var p=this.body.edgeIndices,f=this.body.edges,m=void 0,v=[],c=0;c0&&(this.popupObj=f[v[v.length-1]],r="edge")}void 0!==this.popupObj?this.popupObj.id!==n&&(void 0===this.popup&&(this.popup=new d["default"](this.canvas.frame)),this.popup.popupTargetType=r,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.body.emitter.emit("showPopup",this.popupObj.id)):void 0!==this.popup&&(this.popup.hide(),this.body.emitter.emit("hidePopup"))}},{key:"_checkHidePopup",value:function(t){var e=this.selectionHandler._pointerToPositionObject(t),i=!1;if("node"===this.popup.popupTargetType){if(void 0!==this.body.nodes[this.popup.popupTargetId]&&(i=this.body.nodes[this.popup.popupTargetId].isOverlappingWith(e),i===!0)){var o=this.selectionHandler.getNodeAt(t);i=o.id===this.popup.popupTargetId}}else void 0===this.selectionHandler.getNodeAt(t)&&void 0!==this.body.edges[this.popup.popupTargetId]&&(i=this.body.edges[this.popup.popupTargetId].isOverlappingWith(e));i===!1&&(this.popupObj=void 0,this.popup.hide(),this.body.emitter.emit("hidePopup"))}}]),t}();e["default"]=u,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;i700&&(this.body.emitter.emit("fit",{duration:700}),this.touchTime=(new Date).valueOf())}},{key:"_stopMovement",value:function(){for(var t in this.boundFunctions)this.boundFunctions.hasOwnProperty(t)&&(this.body.emitter.off("initRedraw",this.boundFunctions[t]), +this.body.emitter.emit("_stopRendering"));this.boundFunctions={}}},{key:"_moveUp",value:function(){this.body.view.translation.y+=this.options.keyboard.speed.y}},{key:"_moveDown",value:function(){this.body.view.translation.y-=this.options.keyboard.speed.y}},{key:"_moveLeft",value:function(){this.body.view.translation.x+=this.options.keyboard.speed.x}},{key:"_moveRight",value:function(){this.body.view.translation.x-=this.options.keyboard.speed.x}},{key:"_zoomIn",value:function(){this.body.view.scale*=1+this.options.keyboard.speed.zoom}},{key:"_zoomOut",value:function(){this.body.view.scale/=1+this.options.keyboard.speed.zoom}},{key:"configureKeyboardBindings",value:function(){void 0!==this.keycharm&&this.keycharm.destroy(),this.options.keyboard.enabled===!0&&(this.options.keyboard.bindToWindow===!0?this.keycharm=a({container:window,preventDefault:!0}):this.keycharm=a({container:this.canvas.frame,preventDefault:!0}),this.keycharm.reset(),this.activated===!0&&(this.keycharm.bind("up",this.bindToRedraw.bind(this,"_moveUp"),"keydown"),this.keycharm.bind("down",this.bindToRedraw.bind(this,"_moveDown"),"keydown"),this.keycharm.bind("left",this.bindToRedraw.bind(this,"_moveLeft"),"keydown"),this.keycharm.bind("right",this.bindToRedraw.bind(this,"_moveRight"),"keydown"),this.keycharm.bind("=",this.bindToRedraw.bind(this,"_zoomIn"),"keydown"),this.keycharm.bind("num+",this.bindToRedraw.bind(this,"_zoomIn"),"keydown"),this.keycharm.bind("num-",this.bindToRedraw.bind(this,"_zoomOut"),"keydown"),this.keycharm.bind("-",this.bindToRedraw.bind(this,"_zoomOut"),"keydown"),this.keycharm.bind("[",this.bindToRedraw.bind(this,"_zoomOut"),"keydown"),this.keycharm.bind("]",this.bindToRedraw.bind(this,"_zoomIn"),"keydown"),this.keycharm.bind("pageup",this.bindToRedraw.bind(this,"_zoomIn"),"keydown"),this.keycharm.bind("pagedown",this.bindToRedraw.bind(this,"_zoomOut"),"keydown"),this.keycharm.bind("up",this.unbindFromRedraw.bind(this,"_moveUp"),"keyup"),this.keycharm.bind("down",this.unbindFromRedraw.bind(this,"_moveDown"),"keyup"),this.keycharm.bind("left",this.unbindFromRedraw.bind(this,"_moveLeft"),"keyup"),this.keycharm.bind("right",this.unbindFromRedraw.bind(this,"_moveRight"),"keyup"),this.keycharm.bind("=",this.unbindFromRedraw.bind(this,"_zoomIn"),"keyup"),this.keycharm.bind("num+",this.unbindFromRedraw.bind(this,"_zoomIn"),"keyup"),this.keycharm.bind("num-",this.unbindFromRedraw.bind(this,"_zoomOut"),"keyup"),this.keycharm.bind("-",this.unbindFromRedraw.bind(this,"_zoomOut"),"keyup"),this.keycharm.bind("[",this.unbindFromRedraw.bind(this,"_zoomOut"),"keyup"),this.keycharm.bind("]",this.unbindFromRedraw.bind(this,"_zoomIn"),"keyup"),this.keycharm.bind("pageup",this.unbindFromRedraw.bind(this,"_zoomIn"),"keyup"),this.keycharm.bind("pagedown",this.unbindFromRedraw.bind(this,"_zoomOut"),"keyup")))}}]),t}();e["default"]=h,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;io&&(s=o-e-this.padding),sn&&(r=n-i-this.padding),r0?e===!0?this.body.nodes[o[o.length-1]]:o[o.length-1]:void 0}},{key:"_getEdgesOverlappingWith",value:function(t,e){for(var i=this.body.edges,o=0;o0?e===!0?this.body.edges[o[o.length-1]]:o[o.length-1]:void 0}},{key:"_addToSelection",value:function(t){t instanceof s?this.selectionObj.nodes[t.id]=t:this.selectionObj.edges[t.id]=t}},{key:"_addToHover",value:function(t){t instanceof s?this.hoverObj.nodes[t.id]=t:this.hoverObj.edges[t.id]=t}},{key:"_removeFromSelection",value:function(t){t instanceof s?delete this.selectionObj.nodes[t.id]:delete this.selectionObj.edges[t.id]}},{key:"unselectAll",value:function(){for(var t in this.selectionObj.nodes)this.selectionObj.nodes.hasOwnProperty(t)&&this.selectionObj.nodes[t].unselect();for(var e in this.selectionObj.edges)this.selectionObj.edges.hasOwnProperty(e)&&this.selectionObj.edges[e].unselect();this.selectionObj={nodes:{},edges:{}}}},{key:"_getSelectedNodeCount",value:function(){var t=0;for(var e in this.selectionObj.nodes)this.selectionObj.nodes.hasOwnProperty(e)&&(t+=1);return t}},{key:"_getSelectedNode",value:function(){for(var t in this.selectionObj.nodes)if(this.selectionObj.nodes.hasOwnProperty(t))return this.selectionObj.nodes[t];return void 0}},{key:"_getSelectedEdge",value:function(){for(var t in this.selectionObj.edges)if(this.selectionObj.edges.hasOwnProperty(t))return this.selectionObj.edges[t];return void 0}},{key:"_getSelectedEdgeCount",value:function(){var t=0;for(var e in this.selectionObj.edges)this.selectionObj.edges.hasOwnProperty(e)&&(t+=1);return t}},{key:"_getSelectedObjectCount",value: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}},{key:"_selectionIsEmpty",value: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}},{key:"_clusterInSelection",value:function(){for(var t in this.selectionObj.nodes)if(this.selectionObj.nodes.hasOwnProperty(t)&&this.selectionObj.nodes[t].clusterSize>1)return!0;return!1}},{key:"_selectConnectedEdges",value:function(t){for(var e=0;e0&&(this.options.hierarchical.levelSeparation*=-1):this.options.hierarchical.levelSeparation<0&&(this.options.hierarchical.levelSeparation*=-1),this.body.emitter.emit("_resetHierarchicalLayout"),this.adaptAllOptions(e);if(i===!0)return this.body.emitter.emit("refresh"),s.deepExtend(e,this.optionsBackup)}return e}},{key:"adaptAllOptions",value:function(t){if(this.options.hierarchical.enabled===!0){void 0===t.physics||t.physics===!0?(t.physics={solver:"hierarchicalRepulsion"},this.optionsBackup.physics={solver:"barnesHut"}):"object"==typeof t.physics?(this.optionsBackup.physics={solver:"barnesHut"},void 0!==t.physics.solver&&(this.optionsBackup.physics={solver:t.physics.solver}),t.physics.solver="hierarchicalRepulsion"):t.physics!==!1&&(this.optionsBackup.physics={solver:"barnesHut"},t.physics.solver="hierarchicalRepulsion");var e="horizontal";("RL"===this.options.hierarchical.direction||"LR"===this.options.hierarchical.direction)&&(e="vertical"),void 0===t.edges?(this.optionsBackup.edges={smooth:{enabled:!0,type:"dynamic"}},t.edges={smooth:!1}):void 0===t.edges.smooth?(this.optionsBackup.edges={smooth:{enabled:!0,type:"dynamic"}},t.edges.smooth=!1):"boolean"==typeof t.edges.smooth?(this.optionsBackup.edges={smooth:t.edges.smooth},t.edges.smooth={enabled:t.edges.smooth,type:e}):(void 0!==t.edges.smooth.type&&"dynamic"!==t.edges.smooth.type&&(e=t.edges.smooth.type),this.optionsBackup.edges={smooth:void 0===t.edges.smooth.enabled?!0:t.edges.smooth.enabled,type:void 0===t.edges.smooth.type?"dynamic":t.edges.smooth.type,roundness:void 0===t.edges.smooth.roundness?.5:t.edges.smooth.roundness},t.edges.smooth={enabled:void 0===t.edges.smooth.enabled?!0:t.edges.smooth.enabled,type:e,roundness:void 0===t.edges.smooth.roundness?.5:t.edges.smooth.roundness}),this.body.emitter.emit("_forceDisableDynamicCurves",e)}return t}},{key:"seededRandom",value:function(){var t=1e4*Math.sin(this.randomSeed++);return t-Math.floor(t)}},{key:"positionInitially",value:function(t){if(this.options.hierarchical.enabled!==!0){this.randomSeed=this.initialRandomSeed;for(var e=0;e0){var t=void 0,e=void 0,i=!1,o=!1;this.hierarchicalLevels={},this.nodeSpacing=100;for(e in this.body.nodes)this.body.nodes.hasOwnProperty(e)&&(t=this.body.nodes[e],void 0!==t.options.level?(i=!0,this.hierarchicalLevels[e]=t.options.level):o=!0);if(o===!0&&i===!0)throw new Error("To use the hierarchical layout, nodes require either no predefined levels or levels have to be defined for all nodes.");o===!0&&("hubsize"===this.options.hierarchical.sortMethod?this._determineLevelsByHubsize():("directed"===this.options.hierarchical.sortMethod,0||this._determineLevelsDirected()));var n=this._getDistribution();this._placeNodesByHierarchy(n)}}},{key:"_placeNodesByHierarchy",value:function(t){var e=void 0,i=void 0;this.positionedNodes={};for(var o in t)if(t.hasOwnProperty(o))for(e in t[o].nodes)t[o].nodes.hasOwnProperty(e)&&(i=t[o].nodes[e],"UD"===this.options.hierarchical.direction||"DU"===this.options.hierarchical.direction?(void 0===i.x&&(i.x=t[o].distance),t[o].distance=i.x+this.nodeSpacing):(void 0===i.y&&(i.y=t[o].distance),t[o].distance=i.y+this.nodeSpacing),this.positionedNodes[e]=!0,this._placeBranchNodes(i.edges,i.id,t,o))}},{key:"_getDistribution",value:function(){var t={},e=void 0,i=void 0;for(e in this.body.nodes)if(this.body.nodes.hasOwnProperty(e)){i=this.body.nodes[e];var o=void 0===this.hierarchicalLevels[e]?0:this.hierarchicalLevels[e];"UD"===this.options.hierarchical.direction||"DU"===this.options.hierarchical.direction?(i.y=this.options.hierarchical.levelSeparation*o,i.options.fixed.y=!0):(i.x=this.options.hierarchical.levelSeparation*o,i.options.fixed.x=!0),void 0===t[o]&&(t[o]={amount:0,nodes:{},distance:0}),t[o].amount+=1,t[o].nodes[e]=i}return t}},{key:"_getHubSize",value:function(){var t=0;for(var e in this.body.nodes)if(this.body.nodes.hasOwnProperty(e)){var i=this.body.nodes[e];void 0===this.hierarchicalLevels[e]&&(t=i.edges.length0&&(i=this._getHubSize(),0!==i);)for(t in this.body.nodes)this.body.nodes.hasOwnProperty(t)&&(e=this.body.nodes[t],e.edges.length===i&&this._setLevelByHubsize(0,e))}},{key:"_setLevelByHubsize",value:function(t,e){if(void 0===this.hierarchicalLevels[e.id]){var i=void 0;this.hierarchicalLevels[e.id]=t;for(var o=0;oo&&("UD"===this.options.hierarchical.direction||"DU"===this.options.hierarchical.direction?(void 0===s.x&&(s.x=Math.max(i[a].distance,r.x)),i[a].distance=s.x+this.nodeSpacing,this.positionedNodes[s.id]=!0):(void 0===s.y&&(s.y=Math.max(i[a].distance,r.y)),i[a].distance=s.y+this.nodeSpacing),this.positionedNodes[s.id]=!0,s.edges.length>1&&this._placeBranchNodes(s.edges,s.id,i,a))}}}]),t}();e["default"]=r,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;i0){for(var n=0;n0&&"function"==typeof this.options.deleteEdge&&(o=this.options.deleteEdge);if("function"==typeof o){var s={nodes:e,edges:i};if(2!==o.length)throw new Error("The function for delete does not support two arguments (data, callback)");o(s,function(e){null!==e&&void 0!==e&&"delete"===t.inMode&&(t.body.data.edges.remove(e.edges),t.body.data.nodes.remove(e.nodes),t.body.emitter.emit("startSimulation"),t.showManipulatorToolbar())})}else this.body.data.edges.remove(i),this.body.data.nodes.remove(e),this.body.emitter.emit("startSimulation"),this.showManipulatorToolbar()}},{key:"_setup",value:function(){this.options.enabled===!0?(this.guiEnabled=!0,this._createWrappers(),this.editMode===!1?this._createEditButton():this.showManipulatorToolbar()):(this._removeManipulationDOM(),this.guiEnabled=!1)}},{key:"_createWrappers",value:function(){void 0===this.manipulationDiv&&(this.manipulationDiv=document.createElement("div"),this.manipulationDiv.className="vis-manipulation",this.editMode===!0?this.manipulationDiv.style.display="block":this.manipulationDiv.style.display="none",this.canvas.frame.appendChild(this.manipulationDiv)),void 0===this.editModeDiv&&(this.editModeDiv=document.createElement("div"),this.editModeDiv.className="vis-edit-mode",this.editMode===!0?this.editModeDiv.style.display="none":this.editModeDiv.style.display="block",this.canvas.frame.appendChild(this.editModeDiv)),void 0===this.closeDiv&&(this.closeDiv=document.createElement("div"),this.closeDiv.className="vis-close",this.closeDiv.style.display=this.manipulationDiv.style.display,this.canvas.frame.appendChild(this.closeDiv))}},{key:"_getNewTargetNode",value:function(t,e){var i=s.deepExtend({},this.options.controlNodeStyle);return i.id="targetNode"+s.randomUUID(),i.hidden=!1,i.physics=!1,i.x=t,i.y=e,this.body.functions.createNode(i)}},{key:"_createEditButton",value:function(){this._clean(),this.manipulationDOM={},s.recursiveDOMDelete(this.editModeDiv);var t=this.options.locales[this.options.locale],e=this._createButton("editMode","vis-button vis-edit vis-edit-mode",t.edit||this.options.locales.en.edit);this.editModeDiv.appendChild(e),this._bindHammerToDiv(e,this.toggleEditMode.bind(this))}},{key:"_clean",value:function(){this.inMode=!1,this.guiEnabled===!0&&(s.recursiveDOMDelete(this.editModeDiv),s.recursiveDOMDelete(this.manipulationDiv),this._cleanManipulatorHammers()),this._cleanupTemporaryNodesAndEdges(),this._unbindTemporaryUIs(),this._unbindTemporaryEvents(),this.body.emitter.emit("restorePhysics")}},{key:"_cleanManipulatorHammers",value:function(){if(0!=this.manipulationHammers.length){for(var t=0;t=0;r--)if(n[r]!==this.selectedControlNode.id){s=this.body.nodes[n[r]];break}if(void 0!==s&&void 0!==this.selectedControlNode)if(s.isCluster===!0)alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError);else{var a=this.body.nodes[this.temporaryIds.nodes[0]];this.selectedControlNode.id===a.id?this._performEditEdge(s.id,o.to.id):this._performEditEdge(o.from.id,s.id)}else o.updateEdgeType(),this.body.emitter.emit("restorePhysics");this.body.emitter.emit("_redraw")}},{key:"_handleConnect",value:function(t){if((new Date).valueOf()-this.touchTime>100){this.lastTouch=this.body.functions.getPointer(t.center),this.lastTouch.translation=s.extend({},this.body.view.translation);var e=this.lastTouch,i=this.selectionHandler.getNodeAt(e);if(void 0!==i)if(i.isCluster===!0)alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError);else{var o=this._getNewTargetNode(i.x,i.y);this.body.nodes[o.id]=o,this.body.nodeIndices.push(o.id);var n=this.body.functions.createEdge({id:"connectionEdge"+s.randomUUID(),from:i.id,to:o.id,physics:!1,smooth:{enabled:!0,type:"continuous",roundness:.5}});this.body.edges[n.id]=n,this.body.edgeIndices.push(n.id),this.temporaryIds.nodes.push(o.id),this.temporaryIds.edges.push(n.id)}this.touchTime=(new Date).valueOf()}}},{key:"_dragControlNode",value:function(t){var e=this.body.functions.getPointer(t.center);if(void 0!==this.temporaryIds.nodes[0]){var i=this.body.nodes[this.temporaryIds.nodes[0]];i.x=this.canvas._XconvertDOMtoCanvas(e.x),i.y=this.canvas._YconvertDOMtoCanvas(e.y),this.body.emitter.emit("_redraw")}else{var o=e.x-this.lastTouch.x,n=e.y-this.lastTouch.y;this.body.view.translation={x:this.lastTouch.translation.x+o,y:this.lastTouch.translation.y+n}}}},{key:"_finishConnect",value:function(t){var e=this.body.functions.getPointer(t.center),i=this.selectionHandler._pointerToPositionObject(e),o=void 0;void 0!==this.temporaryIds.edges[0]&&(o=this.body.edges[this.temporaryIds.edges[0]].fromId);for(var n=this.selectionHandler._getAllNodesOverlappingWith(i),s=void 0,r=n.length-1;r>=0;r--)if(-1===this.temporaryIds.nodes.indexOf(n[r])){s=this.body.nodes[n[r]];break}this._cleanupTemporaryNodesAndEdges(),void 0!==s&&(s.isCluster===!0?alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError):void 0!==this.body.nodes[o]&&void 0!==this.body.nodes[s.id]&&this._performAddEdge(o,s.id)),this.body.emitter.emit("_redraw")}},{key:"_performAddNode",value:function(t){var e=this,i={id:s.randomUUID(),x:t.pointer.canvas.x,y:t.pointer.canvas.y,label:"new"};if("function"==typeof this.options.addNode){if(2!==this.options.addNode.length)throw new Error("The function for add does not support two arguments (data,callback)");this.options.addNode(i,function(t){null!==t&&void 0!==t&&"addNode"===e.inMode&&(e.body.data.nodes.add(t),e.showManipulatorToolbar())})}else this.body.data.nodes.add(i),this.showManipulatorToolbar()}},{key:"_performAddEdge",value:function(t,e){var i=this,o={from:t,to:e};if("function"==typeof this.options.addEdge){if(2!==this.options.addEdge.length)throw new Error("The function for connect does not support two arguments (data,callback)");this.options.addEdge(o,function(t){null!==t&&void 0!==t&&"addEdge"===i.inMode&&(i.body.data.edges.add(t),i.selectionHandler.unselectAll(),i.showManipulatorToolbar())})}else this.body.data.edges.add(o),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}},{key:"_performEditEdge",value:function(t,e){var i=this,o={id:this.edgeBeingEditedId,from:t,to:e};if("function"==typeof this.options.editEdge){if(2!==this.options.editEdge.length)throw new Error("The function for edit does not support two arguments (data, callback)");this.options.editEdge(o,function(t){null===t||void 0===t||"editEdge"!==i.inMode?(i.body.edges[o.id].updateEdgeType(),i.body.emitter.emit("_redraw")):(i.body.data.edges.update(t),i.selectionHandler.unselectAll(),i.showManipulatorToolbar())})}else this.body.data.edges.update(o),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}}]),t}();e["default"]=h,t.exports=e["default"]},function(t,e,i){Object.defineProperty(e,"__esModule",{value:!0});var o="string",n="boolean",s="number",r="array",a="object",h="dom",d="function",l="undefined",u={configure:{enabled:{"boolean":n},filter:{"boolean":n,string:o,array:r,fn:d},container:{dom:h},showButton:{"boolean":n},__type__:{object:a,"boolean":n,string:o,array:r,fn:d}},edges:{arrows:{to:{enabled:{"boolean":n},scaleFactor:{number:s},__type__:{object:a,"boolean":n}},middle:{enabled:{"boolean":n},scaleFactor:{number:s},__type__:{object:a,"boolean":n}},from:{enabled:{"boolean":n},scaleFactor:{number:s},__type__:{object:a,"boolean":n}},__type__:{string:["from","to","middle"],object:a}},color:{color:{string:o},highlight:{string:o},hover:{string:o},inherit:{string:["from","to","both"],"boolean":n},opacity:{number:s},__type__:{object:a,string:o}},dashes:{"boolean":n,array:r},font:{color:{string:o},size:{number:s},face:{string:o},background:{string:o},strokeWidth:{number:s},strokeColor:{string:o},align:{string:["horizontal","top","middle","bottom"]},__type__:{object:a,string:o}},hidden:{"boolean":n},hoverWidth:{fn:d,number:s},label:{string:o,undef:l},length:{number:s,undef:l},physics:{"boolean":n},scaling:{min:{number:s},max:{number:s},label:{enabled:{"boolean":n},min:{number:s},max:{number:s},maxVisible:{number:s},drawThreshold:{number:s},__type__:{object:a,"boolean":n}},customScalingFunction:{fn:d},__type__:{object:a}},selectionWidth:{fn:d,number:s},selfReferenceSize:{number:s},shadow:{enabled:{"boolean":n},size:{number:s},x:{number:s},y:{number:s},__type__:{object:a,"boolean":n}},smooth:{enabled:{"boolean":n},type:{string:["dynamic","continuous","discrete","diagonalCross","straightCross","horizontal","vertical","curvedCW","curvedCCW"]},roundness:{number:s},__type__:{object:a,"boolean":n}},title:{string:o,undef:l},width:{number:s},value:{number:s,undef:l},__type__:{object:a}},groups:{useDefaultGroups:{"boolean":n},__any__:"get from nodes, will be overwritten below",__type__:{object:a}},interaction:{dragNodes:{"boolean":n},dragView:{"boolean":n},hideEdgesOnDrag:{"boolean":n},hideNodesOnDrag:{"boolean":n},hover:{"boolean":n},keyboard:{enabled:{"boolean":n},speed:{x:{number:s},y:{number:s},zoom:{number:s},__type__:{object:a}},bindToWindow:{"boolean":n},__type__:{object:a,"boolean":n}},multiselect:{"boolean":n},navigationButtons:{"boolean":n},selectable:{"boolean":n},selectConnectedEdges:{"boolean":n},hoverConnectedEdges:{"boolean":n},tooltipDelay:{number:s},zoomView:{"boolean":n},__type__:{object:a}},layout:{randomSeed:{undef:l,number:s},hierarchical:{enabled:{"boolean":n},levelSeparation:{number:s},direction:{string:["UD","DU","LR","RL"]},sortMethod:{string:["hubsize","directed"]},__type__:{object:a,"boolean":n}},__type__:{object:a}},manipulation:{enabled:{"boolean":n},initiallyActive:{"boolean":n},addNode:{"boolean":n,fn:d},addEdge:{"boolean":n,fn:d},editNode:{fn:d},editEdge:{"boolean":n,fn:d},deleteNode:{"boolean":n,fn:d},deleteEdge:{"boolean":n,fn:d},controlNodeStyle:"get from nodes, will be overwritten below",__type__:{object:a,"boolean":n}},nodes:{borderWidth:{number:s},borderWidthSelected:{number:s,undef:l},brokenImage:{string:o,undef:l},color:{border:{string:o},background:{string:o},highlight:{border:{string:o},background:{string:o},__type__:{object:a,string:o}},hover:{border:{string:o},background:{string:o},__type__:{object:a,string:o}},__type__:{object:a,string:o}},fixed:{x:{"boolean":n},y:{"boolean":n},__type__:{object:a,"boolean":n}},font:{color:{string:o},size:{number:s},face:{string:o},background:{string:o},strokeWidth:{number:s},strokeColor:{string:o},__type__:{object:a,string:o}},group:{string:o,number:s,undef:l},hidden:{"boolean":n},icon:{face:{string:o},code:{string:o},size:{number:s},color:{string:o},__type__:{object:a}},id:{string:o,number:s},image:{string:o,undef:l},label:{string:o,undef:l},level:{number:s,undef:l},mass:{number:s},physics:{"boolean":n},scaling:{min:{number:s},max:{number:s},label:{enabled:{"boolean":n},min:{number:s},max:{number:s},maxVisible:{number:s},drawThreshold:{number:s},__type__:{object:a,"boolean":n}},customScalingFunction:{fn:d},__type__:{object:a}},shadow:{enabled:{"boolean":n},size:{number:s},x:{number:s},y:{number:s},__type__:{object:a,"boolean":n}},shape:{string:["ellipse","circle","database","box","text","image","circularImage","diamond","dot","star","triangle","triangleDown","square","icon"]},size:{number:s},title:{string:o,undef:l},value:{number:s,undef:l},x:{number:s},y:{number:s},__type__:{object:a}},physics:{barnesHut:{gravitationalConstant:{number:s},centralGravity:{number:s},springLength:{number:s},springConstant:{number:s},damping:{number:s},avoidOverlap:{number:s},__type__:{object:a}},forceAtlas2Based:{gravitationalConstant:{number:s},centralGravity:{number:s},springLength:{number:s},springConstant:{number:s},damping:{number:s},avoidOverlap:{number:s},__type__:{object:a}},repulsion:{centralGravity:{number:s},springLength:{number:s},springConstant:{number:s},nodeDistance:{number:s},damping:{number:s},__type__:{object:a}},hierarchicalRepulsion:{centralGravity:{number:s},springLength:{number:s},springConstant:{number:s},nodeDistance:{number:s},damping:{number:s},__type__:{object:a}},maxVelocity:{number:s},minVelocity:{number:s},solver:{string:["barnesHut","repulsion","hierarchicalRepulsion","forceAtlas2Based"]},stabilization:{enabled:{"boolean":n},iterations:{number:s},updateInterval:{number:s},onlyDynamicEdges:{"boolean":n},fit:{"boolean":n},__type__:{object:a,"boolean":n}},timestep:{number:s},__type__:{object:a,"boolean":n}},autoResize:{"boolean":n},clickToUse:{"boolean":n},locale:{string:o},locales:{__any__:{object:a},__type__:{object:a}},height:{string:o},width:{string:o},__type__:{object:a}};u.groups.__any__=u.nodes,u.manipulation.controlNodeStyle=u.nodes;var c={nodes:{borderWidth:[1,0,10,1],borderWidthSelected:[2,0,10,1],color:{border:["color","#2B7CE9"],background:["color","#97C2FC"],highlight:{border:["color","#2B7CE9"],background:["color","#D2E5FF"]},hover:{border:["color","#2B7CE9"],background:["color","#D2E5FF"]}},fixed:{x:!1,y:!1},font:{color:["color","#343434"],size:[14,0,100,1],face:["arial","verdana","tahoma"],background:["color","none"],strokeWidth:[0,0,50,1],strokeColor:["color","#ffffff"]},hidden:!1,physics:!0,scaling:{min:[10,0,200,1],max:[30,0,200,1],label:{enabled:!1,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},shadow:{enabled:!1,size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},shape:["ellipse","box","circle","database","diamond","dot","square","star","text","triangle","triangleDown"],size:[25,0,200,1]},edges:{arrows:{to:{enabled:!1,scaleFactor:[1,0,3,.05]},middle:{enabled:!1,scaleFactor:[1,0,3,.05]},from:{enabled:!1,scaleFactor:[1,0,3,.05]}},color:{color:["color","#848484"],highlight:["color","#848484"],hover:["color","#848484"],inherit:["from","to","both",!0,!1],opacity:[1,0,1,.05]},dashes:!1,font:{color:["color","#343434"],size:[14,0,100,1],face:["arial","verdana","tahoma"],background:["color","none"],strokeWidth:[2,0,50,1],strokeColor:["color","#ffffff"],align:["horizontal","top","middle","bottom"]},hidden:!1,hoverWidth:[1.5,0,5,.1],physics:!0,scaling:{min:[1,0,100,1],max:[15,0,100,1],label:{enabled:!0,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},selectionWidth:[1.5,0,5,.1],selfReferenceSize:[20,0,200,1],shadow:{enabled:!1,size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},smooth:{enabled:!0,type:["dynamic","continuous","discrete","diagonalCross","straightCross","horizontal","vertical","curvedCW","curvedCCW"],roundness:[.5,0,1,.05]},width:[1,0,30,1]},layout:{hierarchical:{enabled:!1,levelSeparation:[150,20,500,5],direction:["UD","DU","LR","RL"],sortMethod:["hubsize","directed"]}},interaction:{dragNodes:!0,dragView:!0,hideEdgesOnDrag:!1,hideNodesOnDrag:!1,hover:!1,keyboard:{enabled:!1,speed:{x:[10,0,40,1],y:[10,0,40,1],zoom:[.02,0,.1,.005]},bindToWindow:!0},multiselect:!1,navigationButtons:!1,selectable:!0,selectConnectedEdges:!0,hoverConnectedEdges:!0,tooltipDelay:[300,0,1e3,25],zoomView:!0},manipulation:{enabled:!1,initiallyActive:!1},physics:{barnesHut:{gravitationalConstant:[-2e3,-3e4,0,50],centralGravity:[.3,0,10,.05],springLength:[95,0,500,5],springConstant:[.04,0,1.2,.005],damping:[.09,0,1,.01],avoidOverlap:[0,0,1,.01]},forceAtlas2Based:{gravitationalConstant:[-50,-500,0,1],centralGravity:[.01,0,1,.005],springLength:[95,0,500,5],springConstant:[.08,0,1.2,.005],damping:[.4,0,1,.01],avoidOverlap:[0,0,1,.01]},repulsion:{centralGravity:[.2,0,10,.05],springLength:[200,0,500,5],springConstant:[.05,0,1.2,.005],nodeDistance:[100,0,500,5],damping:[.09,0,1,.01]},hierarchicalRepulsion:{centralGravity:[.2,0,10,.05],springLength:[100,0,500,5],springConstant:[.01,0,1.2,.005],nodeDistance:[120,0,500,5],damping:[.09,0,1,.01]},maxVelocity:[50,0,150,1],minVelocity:[.1,.01,.5,.01],solver:["barnesHut","forceAtlas2Based","repulsion","hierarchicalRepulsion"],timestep:[.5,.01,1,.01]},global:{locale:["en","nl"]}};e.allOptions=u,e.configureOptions=c},function(t,e,i){"undefined"!=typeof CanvasRenderingContext2D&&(CanvasRenderingContext2D.prototype.circle=function(t,e,i){this.beginPath(),this.arc(t,e,i,0,2*Math.PI,!1),this.closePath()},CanvasRenderingContext2D.prototype.square=function(t,e,i){this.beginPath(),this.rect(t-i,e-i,2*i,2*i),this.closePath()},CanvasRenderingContext2D.prototype.triangle=function(t,e,i){this.beginPath(),i*=1.15,e+=.275*i;var o=2*i,n=o/2,s=Math.sqrt(3)/6*o,r=Math.sqrt(o*o-n*n);this.moveTo(t,e-(r-s)),this.lineTo(t+n,e+s),this.lineTo(t-n,e+s),this.lineTo(t,e-(r-s)),this.closePath()},CanvasRenderingContext2D.prototype.triangleDown=function(t,e,i){this.beginPath(),i*=1.15,e-=.275*i;var o=2*i,n=o/2,s=Math.sqrt(3)/6*o,r=Math.sqrt(o*o-n*n);this.moveTo(t,e+(r-s)),this.lineTo(t+n,e-s),this.lineTo(t-n,e-s),this.lineTo(t,e+(r-s)),this.closePath()},CanvasRenderingContext2D.prototype.star=function(t,e,i){this.beginPath(),i*=.82,e+=.1*i;for(var o=0;10>o;o++){var n=o%2===0?1.3*i:.5*i;this.lineTo(t+n*Math.sin(2*o*Math.PI/10),e-n*Math.cos(2*o*Math.PI/10))}this.closePath()},CanvasRenderingContext2D.prototype.diamond=function(t,e,i){this.beginPath(),this.lineTo(t,e+i),this.lineTo(t+i,e),this.lineTo(t,e-i),this.lineTo(t-i,e),this.closePath()},CanvasRenderingContext2D.prototype.roundRect=function(t,e,i,o,n){var s=Math.PI/180;0>i-2*n&&(n=i/2),0>o-2*n&&(n=o/2),this.beginPath(),this.moveTo(t+n,e),this.lineTo(t+i-n,e),this.arc(t+i-n,e+n,n,270*s,360*s,!1),this.lineTo(t+i,e+o-n),this.arc(t+i-n,e+o-n,n,0,90*s,!1),this.lineTo(t+n,e+o),this.arc(t+n,e+o-n,n,90*s,180*s,!1),this.lineTo(t,e+n),this.arc(t+n,e+n,n,180*s,270*s,!1),this.closePath()},CanvasRenderingContext2D.prototype.ellipse=function(t,e,i,o){var n=.5522848,s=i/2*n,r=o/2*n,a=t+i,h=e+o,d=t+i/2,l=e+o/2;this.beginPath(),this.moveTo(t,l),this.bezierCurveTo(t,l-r,d-s,e,d,e),this.bezierCurveTo(d+s,e,a,l-r,a,l),this.bezierCurveTo(a,l+r,d+s,h,d,h),this.bezierCurveTo(d-s,h,t,l+r,t,l),this.closePath()},CanvasRenderingContext2D.prototype.database=function(t,e,i,o){var n=1/3,s=i,r=o*n,a=.5522848,h=s/2*a,d=r/2*a,l=t+s,u=e+r,c=t+s/2,p=e+r/2,f=e+(o-r/2),m=e+o;this.beginPath(),this.moveTo(l,p),this.bezierCurveTo(l,p+d,c+h,u,c,u),this.bezierCurveTo(c-h,u,t,p+d,t,p),this.bezierCurveTo(t,p-d,c-h,e,c,e),this.bezierCurveTo(c+h,e,l,p-d,l,p),this.lineTo(l,f),this.bezierCurveTo(l,f+d,c+h,m,c,m),this.bezierCurveTo(c-h,m,t,f+d,t,f),this.lineTo(t,p)},CanvasRenderingContext2D.prototype.arrow=function(t,e,i,o){var n=t-o*Math.cos(i),s=e-o*Math.sin(i),r=t-.9*o*Math.cos(i),a=e-.9*o*Math.sin(i),h=n+o/3*Math.cos(i+.5*Math.PI),d=s+o/3*Math.sin(i+.5*Math.PI),l=n+o/3*Math.cos(i-.5*Math.PI),u=s+o/3*Math.sin(i-.5*Math.PI);this.beginPath(),this.moveTo(t,e),this.lineTo(h,d),this.lineTo(r,a),this.lineTo(l,u),this.closePath()},CanvasRenderingContext2D.prototype.dashedLine=function(t,e,i,o,n){this.beginPath(),this.moveTo(t,e);for(var s=n.length,r=i-t,a=o-e,h=a/r,d=Math.sqrt(r*r+a*a),l=0,u=!0,c=0,p=n[0];d>=.1;)p=n[l++%s],p>d&&(p=d),c=Math.sqrt(p*p/(1+h*h)),c=0>r?-c:c,t+=c,e+=h*c,u===!0?this.lineTo(t,e):this.moveTo(t,e),d-=p,u=!u})},function(t,e,i){function o(t){return I=t,f()}function n(){N=0,z=I.charAt(0)}function s(){N++,z=I.charAt(N)}function r(){return I.charAt(N+1)}function a(t){return B.test(t)}function h(t,e){if(t||(t={}),e)for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i]);return t}function d(t,e,i){for(var o=e.split("."),n=t;o.length;){var s=o.shift();o.length?(n[s]||(n[s]={}),n=n[s]):n[s]=i}}function l(t,e){for(var i,o,n=null,s=[t],r=t;r.parent;)s.push(r.parent),r=r.parent;if(r.nodes)for(i=0,o=r.nodes.length;o>i;i++)if(e.id===r.nodes[i].id){n=r.nodes[i];break}for(n||(n={id:e.id},t.node&&(n.attr=h(n.attr,t.node))),i=s.length-1;i>=0;i--){var a=s[i];a.nodes||(a.nodes=[]),-1===a.nodes.indexOf(n)&&a.nodes.push(n)}e.attr&&(n.attr=h(n.attr,e.attr))}function u(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 c(t,e,i,o,n){var s={from:e,to:i,type:o};return t.edge&&(s.attr=h({},t.edge)),s.attr=h(s.attr||{},n),s}function p(){for(L=S.NULL,A="";" "===z||" "===z||"\n"===z||"\r"===z;)s();do{var t=!1;if("#"===z){for(var e=N-1;" "===I.charAt(e)||" "===I.charAt(e);)e--;if("\n"===I.charAt(e)||""===I.charAt(e)){for(;""!=z&&"\n"!=z;)s();t=!0}}if("/"===z&&"/"===r()){for(;""!=z&&"\n"!=z;)s();t=!0}if("/"===z&&"*"===r()){for(;""!=z;){if("*"===z&&"/"===r()){s(),s();break}s()}t=!0}for(;" "===z||" "===z||"\n"===z||"\r"===z;)s()}while(t);if(""===z)return void(L=S.DELIMITER);var i=z+r();if(P[i])return L=S.DELIMITER,A=i,s(),void s();if(P[z])return L=S.DELIMITER,A=z,void s();if(a(z)||"-"===z){for(A+=z,s();a(z);)A+=z,s();return"false"===A?A=!1:"true"===A?A=!0:isNaN(Number(A))||(A=Number(A)),void(L=S.IDENTIFIER)}if('"'===z){for(s();""!=z&&('"'!=z||'"'===z&&'"'===r());)A+=z,'"'===z&&s(),s();if('"'!=z)throw x('End of string " expected');return s(),void(L=S.IDENTIFIER)}for(L=S.UNKNOWN;""!=z;)A+=z,s();throw new SyntaxError('Syntax error in part "'+k(A,30)+'"')}function f(){var t={};if(n(),p(),"strict"===A&&(t.strict=!0,p()),("graph"===A||"digraph"===A)&&(t.type=A,p()),L===S.IDENTIFIER&&(t.id=A,p()),"{"!=A)throw x("Angle bracket { expected");if(p(),m(t),"}"!=A)throw x("Angle bracket } expected");if(p(),""!==A)throw x("End of file expected");return p(),delete t.node,delete t.edge,delete t.graph,t}function m(t){for(;""!==A&&"}"!=A;)v(t),";"===A&&p()}function v(t){var e=g(t);if(e)return void w(t,e);var i=y(t);if(!i){if(L!=S.IDENTIFIER)throw x("Identifier expected");var o=A;if(p(),"="===A){if(p(),L!=S.IDENTIFIER)throw x("Identifier expected");t[o]=A,p()}else b(t,o)}}function g(t){var e=null;if("subgraph"===A&&(e={},e.type="subgraph",p(),L===S.IDENTIFIER&&(e.id=A,p())),"{"===A){if(p(),e||(e={}),e.parent=t,e.node=t.node,e.edge=t.edge,e.graph=t.graph,m(e),"}"!=A)throw x("Angle bracket } expected");p(),delete e.node,delete e.edge,delete e.graph,delete e.parent,t.subgraphs||(t.subgraphs=[]),t.subgraphs.push(e)}return e}function y(t){return"node"===A?(p(),t.node=_(),"node"):"edge"===A?(p(),t.edge=_(),"edge"):"graph"===A?(p(),t.graph=_(),"graph"):null}function b(t,e){var i={id:e},o=_();o&&(i.attr=o),l(t,i),w(t,e)}function w(t,e){for(;"->"===A||"--"===A;){var i,o=A;p();var n=g(t);if(n)i=n;else{if(L!=S.IDENTIFIER)throw x("Identifier or subgraph expected");i=A,l(t,{id:i}),p()}var s=_(),r=c(t,e,i,o,s);u(t,r),e=i}}function _(){for(var t=null;"["===A;){for(p(),t={};""!==A&&"]"!=A;){if(L!=S.IDENTIFIER)throw x("Attribute name expected");var e=A;if(p(),"="!=A)throw x("Equal sign = expected");if(p(),L!=S.IDENTIFIER)throw x("Attribute value expected");var i=A;d(t,e,i),p(),","==A&&p()}if("]"!=A)throw x("Bracket ] expected");p()}return t}function x(t){return new SyntaxError(t+', got "'+k(A,30)+'" (char '+N+")")}function k(t,e){return t.length<=e?t:t.substr(0,27)+"..."}function M(t,e,i){Array.isArray(t)?t.forEach(function(t){Array.isArray(e)?e.forEach(function(e){i(t,e)}):i(t,e)}):Array.isArray(e)?e.forEach(function(e){i(t,e)}):i(t,e)}function O(t,e,i){for(var o=e.split("."),n=o.pop(),s=t,r=0;r":!0,"--":!0},I="",N=0,z="",A="",L=S.NULL,B=/[a-zA-Z_0-9.:#]/;e.parseDOT=o,e.DOTToGraph=T},function(t,e,i){function o(t,e){var i=[],o=[],n={edges:{inheritColor:!1},nodes:{fixed:!1,parseColor:!1}};void 0!==e&&(void 0!==e.fixed&&(n.nodes.fixed=e.fixed),void 0!==e.parseColor&&(n.nodes.parseColor=e.parseColor),void 0!==e.inheritColor&&(n.edges.inheritColor=e.inheritColor));for(var s=t.edges,r=t.nodes,a=0;awhat (String or null): name of the clicked thing: item, background, axis, group-label, custom-time, or current-time.
  • event (Object): the original click event.
  • + Example usage: +
    +document.getElementById('myTimeline').onclick = function (event) {
    +  var props = timeline.getEventProperties(event)
    +  console.log(props);
    +}
    diff --git a/lib/timeline/Core.js b/lib/timeline/Core.js index ae4cc452..7ea5a50f 100644 --- a/lib/timeline/Core.js +++ b/lib/timeline/Core.js @@ -457,27 +457,32 @@ Core.prototype.getVisibleItems = function() { * function is 'easeInOutQuad'. */ Core.prototype.fit = function(options) { - var range = this._getDataRange(); + var range = this.getDataRange(); // skip range set if there is no start and end date if (range.start === null && range.end === null) { return; } + // apply a margin of 1% left and right of the data + var interval = range.max - range.min; + var min = new Date(range.min.valueOf() - interval * 0.01); + var max = new Date(range.max.valueOf() + interval * 0.01); + var animation = (options && options.animation !== undefined) ? options.animation : true; - this.range.setRange(range.start, range.end, animation); + this.range.setRange(min, max, animation); }; /** - * Calculate the data range of the items and applies a 5% window around it. - * @returns {{start: Date | null, end: Date | null}} + * Calculate the data range of the items start and end dates + * @returns {{min: Date | null, max: Date | null}} * @protected */ -Core.prototype._getDataRange = function() { +Core.prototype.getDataRange = function() { // apply the data range as range var dataRange = this.getItemRange(); - // add 5% space on both sides + // add 1% space on both sides var start = dataRange.min; var end = dataRange.max; if (start != null && end != null) { @@ -486,13 +491,13 @@ Core.prototype._getDataRange = function() { // prevent an empty interval interval = 24 * 60 * 60 * 1000; // 1 day } - start = new Date(start.valueOf() - interval * 0.05); - end = new Date(end.valueOf() + interval * 0.05); + start = new Date(start.valueOf() - interval * 0.01); + end = new Date(end.valueOf() + interval * 0.01); } return { - start: start, - end: end + start: null, + end: null } }; diff --git a/lib/timeline/Graph2d.js b/lib/timeline/Graph2d.js index 0ab6ab28..4cea8d8f 100644 --- a/lib/timeline/Graph2d.js +++ b/lib/timeline/Graph2d.js @@ -242,7 +242,7 @@ Graph2d.prototype.isGroupVisible = function(groupId) { * When no minimum is found, min==null * When no maximum is found, max==null */ -Graph2d.prototype.getItemRange = function() { +Graph2d.prototype.getDataRange = function() { var min = null; var max = null; diff --git a/lib/timeline/Timeline.js b/lib/timeline/Timeline.js index b59ff2da..9952c97f 100644 --- a/lib/timeline/Timeline.js +++ b/lib/timeline/Timeline.js @@ -209,11 +209,11 @@ Timeline.prototype.setItems = function(items) { if (initialLoad) { if (this.options.start != undefined || this.options.end != undefined) { if (this.options.start == undefined || this.options.end == undefined) { - var dataRange = this._getDataRange(); + var range = this.getItemRange(); } - var start = this.options.start != undefined ? this.options.start : dataRange.start; - var end = this.options.end != undefined ? this.options.end : dataRange.end; + var start = this.options.start != undefined ? this.options.start : range.min; + var end = this.options.end != undefined ? this.options.end : range.max; this.setWindow(start, end, {animation: false}); } @@ -344,44 +344,114 @@ Timeline.prototype.focus = function(id, options) { }; /** - * Get the data range of the item set. - * @returns {{min: Date, max: Date}} range A range with a start and end Date. - * When no minimum is found, min==null - * When no maximum is found, max==null + * Set Timeline window such that it fits all items + * @param {Object} [options] Available options: + * `animation: boolean | {duration: number, easingFunction: string}` + * If true (default), the range is animated + * smoothly to the new window. An object can be + * provided to specify duration and easing function. + * Default duration is 500 ms, and default easing + * function is 'easeInOutQuad'. */ -Timeline.prototype.getItemRange = function() { - // calculate min from start filed - var dataset = this.itemsData && this.itemsData.getDataSet(); +Timeline.prototype.fit = function (options) { + var animation = (options && options.animation !== undefined) ? options.animation : true; + var range = this.getItemRange(); + this.range.setRange(range.min, range.max, animation); +}; + +/** + * Determine the range of the items, taking into account their actual width + * and a margin of 10 pixels on both sides. + * @return {{min: Date | null, max: Date | null}} + */ +Timeline.prototype.getItemRange = function () { + // get a rough approximation for the range based on the items start and end dates + var range = this.getDataRange(); + var min = range.min; + var max = range.max; + var minItem = null; + var maxItem = null; + + if (min != null && max != null) { + var interval = (max - min); // ms + if (interval <= 0) { + interval = 10; + } + var factor = interval / this.props.center.width; + + function getStart(item) { + return util.convert(item.data.start, 'Date').valueOf() + } + + function getEnd(item) { + var end = item.data.end != undefined ? item.data.end : item.data.start; + return util.convert(end, 'Date').valueOf(); + } + + // calculate the date of the left side and right side of the items given + util.forEach(this.itemSet.items, function (item) { + item.show(); + + var start = getStart(item); + var end = getEnd(item); + + var left = new Date(start - (item.getWidthLeft() + 10) * factor); + var right = new Date(end + (item.getWidthRight() + 10) * factor); + + if (left < min) { + min = left; + minItem = item; + } + if (right > max) { + max = right; + maxItem = item; + } + }.bind(this)); + + if (minItem && maxItem) { + var lhs = minItem.getWidthLeft() + 10; + var rhs = maxItem.getWidthRight() + 10; + var delta = this.props.center.width - lhs - rhs; // px + + if (delta > 0) { + min = getStart(minItem) - lhs * interval / delta; // ms + max = getEnd(maxItem) + rhs * interval / delta; // ms + } + } + } + + return { + min: min != null ? new Date(min) : null, + max: max != null ? new Date(max) : null + } +}; + +/** + * Calculate the data range of the items start and end dates + * @returns {{min: Date | null, max: Date | null}} + */ +Timeline.prototype.getDataRange = function() { var min = null; var max = null; + var dataset = this.itemsData && this.itemsData.getDataSet(); if (dataset) { - // calculate the minimum value of the field 'start' - var minItem = dataset.min('start'); - min = minItem ? util.convert(minItem.start, 'Date').valueOf() : null; - // Note: we convert first to Date and then to number because else - // a conversion from ISODate to Number will fail - - // calculate maximum value of fields 'start' and 'end' - var maxStartItem = dataset.max('start'); - if (maxStartItem) { - max = util.convert(maxStartItem.start, 'Date').valueOf(); - } - var maxEndItem = dataset.max('end'); - if (maxEndItem) { - if (max == null) { - max = util.convert(maxEndItem.end, 'Date').valueOf(); + dataset.forEach(function (item) { + var start = util.convert(item.start, 'Date').valueOf(); + var end = util.convert(item.end != undefined ? item.end : item.start, 'Date').valueOf(); + if (min === null || start < min) { + min = start; } - else { - max = Math.max(max, util.convert(maxEndItem.end, 'Date').valueOf()); + if (max === null || end > max) { + max = start; } - } + }); } return { - min: (min != null) ? new Date(min) : null, - max: (max != null) ? new Date(max) : null - }; + min: min != null ? new Date(min) : null, + max: max != null ? new Date(max) : null + } }; /** diff --git a/lib/timeline/component/item/BoxItem.js b/lib/timeline/component/item/BoxItem.js index 65b720a3..efc15f85 100644 --- a/lib/timeline/component/item/BoxItem.js +++ b/lib/timeline/component/item/BoxItem.js @@ -215,4 +215,20 @@ BoxItem.prototype.repositionY = function() { dot.style.top = (-this.props.dot.height / 2) + 'px'; }; +/** + * Return the width of the item left from its start date + * @return {number} + */ +BoxItem.prototype.getWidthLeft = function () { + return this.width / 2; +}; + +/** + * Return the width of the item right from its start date + * @return {number} + */ +BoxItem.prototype.getWidthRight = function () { + return this.width / 2; +}; + module.exports = BoxItem; diff --git a/lib/timeline/component/item/Item.js b/lib/timeline/component/item/Item.js index 28d7dae5..b940160c 100644 --- a/lib/timeline/component/item/Item.js +++ b/lib/timeline/component/item/Item.js @@ -273,4 +273,20 @@ Item.prototype._contentToString = function (content) { return content; }; +/** + * Return the width of the item left from its start date + * @return {number} + */ +Item.prototype.getWidthLeft = function () { + return 0; +}; + +/** + * Return the width of the item right from the max of its start and end date + * @return {number} + */ +Item.prototype.getWidthRight = function () { + return 0; +}; + module.exports = Item; diff --git a/lib/timeline/component/item/PointItem.js b/lib/timeline/component/item/PointItem.js index ace98250..7c6bd6d4 100644 --- a/lib/timeline/component/item/PointItem.js +++ b/lib/timeline/component/item/PointItem.js @@ -105,9 +105,7 @@ PointItem.prototype.redraw = function() { dom.point.className = 'vis-item vis-point' + className; dom.dot.className = 'vis-item vis-dot' + className; - // recalculate size - this.width = dom.point.offsetWidth; - this.height = dom.point.offsetHeight; + // recalculate size of dot and contents this.props.dot.width = dom.dot.offsetWidth; this.props.dot.height = dom.dot.offsetHeight; this.props.content.height = dom.content.offsetHeight; @@ -119,6 +117,10 @@ PointItem.prototype.redraw = function() { dom.dot.style.top = ((this.height - this.props.dot.height) / 2) + 'px'; dom.dot.style.left = (this.props.dot.width / 2) + 'px'; + // recalculate size + this.width = dom.point.offsetWidth; + this.height = dom.point.offsetHeight; + this.dirty = false; } @@ -177,4 +179,20 @@ PointItem.prototype.repositionY = function() { } }; +/** + * Return the width of the item left from its start date + * @return {number} + */ +PointItem.prototype.getWidthLeft = function () { + return this.props.dot.width; +}; + +/** + * Return the width of the item right from its start date + * @return {number} + */ +PointItem.prototype.getWidthRight = function () { + return this.width - this.props.dot.width; +}; + module.exports = PointItem; diff --git a/test/timeline.html b/test/timeline.html index ed2e5dbb..1f8d2816 100644 --- a/test/timeline.html +++ b/test/timeline.html @@ -137,7 +137,7 @@ title: 'hello title!' }, {_id: 5, content: 'item 5', start: now.clone().add(9, 'days').toDate(), type:'point', title: 'hello title!', className: 'special'}, - {_id: 6, content: 'item 6', start: now.clone().add(11, 'days').toDate()} + {_id: 6, content: 'item 6 very long test bla bla bla', start: now.clone().add(11, 'days').toDate()} ]); var container = document.getElementById('visualization'); @@ -147,8 +147,8 @@ editable: true, //orientation: 'top', orientation: 'both', - start: now.clone().add(-7, 'days'), - end: now.clone().add(7, 'days'), +// start: now.clone().add(-7, 'days'), +// end: now.clone().add(7, 'days'), //maxHeight: 200, //height: 200, showCurrentTime: true, @@ -170,7 +170,7 @@ //min: moment('2013-01-01'), //max: moment('2013-12-31'), //zoomMin: 1000 * 60 * 60 * 24, // 1 day - zoomMax: 1000 * 60 * 60 * 24 * 30 * 6 // 6 months +// zoomMax: 1000 * 60 * 60 * 24 * 30 * 6 // 6 months }; console.timeEnd('create dataset');