diff --git a/HISTORY.md b/HISTORY.md index bd3424f8..aad678ec 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -7,6 +7,7 @@ http://visjs.org - Properly fixed the _lockedRedraw method. - Fixed node resizing on dragging. +- Added shapeProperties, thanks @zukomgwili! ### Graph3d diff --git a/dist/vis.js b/dist/vis.js index eee70eb0..da610bdb 100644 --- a/dist/vis.js +++ b/dist/vis.js @@ -5,7 +5,7 @@ * A dynamic, browser-based visualization library. * * @version 4.4.1-SNAPSHOT - * @date 2015-07-06 + * @date 2015-07-08 * * @license * Copyright (C) 2011-2014 Almende B.V, http://almende.com @@ -3658,7 +3658,10 @@ return /******/ (function(modules) { // webpackBootstrap } } } else if (Array.isArray(b[prop])) { - throw new TypeError('Arrays are not supported by deepExtend'); + a[prop] = []; + for (var i = 0; i < b[prop].length; i++) { + a[prop].push(b[prop][i]); + } } else { a[prop] = b[prop]; } @@ -10608,6 +10611,7 @@ return /******/ (function(modules) { // webpackBootstrap if (options.zMax !== undefined) this.defaultZMax = options.zMax; if (options.valueMin !== undefined) this.defaultValueMin = options.valueMin; if (options.valueMax !== undefined) this.defaultValueMax = options.valueMax; + if (options.backgroundColor !== undefined) this._setBackgroundColor(options.backgroundColor); if (options.cameraPosition !== undefined) cameraPosition = options.cameraPosition; @@ -10635,7 +10639,6 @@ return /******/ (function(modules) { // webpackBootstrap } } } - this._setBackgroundColor(options.backgroundColor); } this.setSize(this.width, this.height); @@ -11240,7 +11243,7 @@ return /******/ (function(modules) { // webpackBootstrap } else { v = 1; fillStyle = this._hsv2rgb(h, s, v); - strokeStyle = this.axisColor; + strokeStyle = this.axisColor; // TODO: should be customizable } } else { fillStyle = 'gray'; @@ -11257,7 +11260,7 @@ return /******/ (function(modules) { // webpackBootstrap ctx.lineTo(top.screen.x, top.screen.y); ctx.closePath(); ctx.fill(); - ctx.stroke(); + ctx.stroke(); // TODO: only draw stroke when strokeWidth > 0 } } } else { @@ -17807,6 +17810,9 @@ return /******/ (function(modules) { // webpackBootstrap // update contents var content = data && data.content; if (content instanceof Element) { + while (this.dom.inner.firstChild) { + this.dom.inner.removeChild(this.dom.inner.firstChild); + } this.dom.inner.appendChild(content); } else if (content !== undefined && content !== null) { this.dom.inner.innerHTML = content; @@ -17841,11 +17847,11 @@ return /******/ (function(modules) { // webpackBootstrap // update style if (this.style) { - util.removeCssText(this.dom.label, 'vis-' + this.style); + util.removeCssText(this.dom.label, this.style); this.style = null; } if (data && data.style) { - util.addCssText(this.dom.label, 'vis-' + data.style); + util.addCssText(this.dom.label, data.style); this.style = data.style; } }; @@ -26718,7 +26724,7 @@ return /******/ (function(modules) { // webpackBootstrap return this.canvas.canvasToDOM.apply(this.canvas, arguments); }; Network.prototype.DOMtoCanvas = function () { - return this.canvas.DOMtoCanvas(this.canvas, arguments); + return this.canvas.DOMtoCanvas.apply(this.canvas, arguments); }; Network.prototype.findNode = function () { return this.clustering.findNode.apply(this.clustering, arguments); @@ -27128,6 +27134,9 @@ return /******/ (function(modules) { // webpackBootstrap y: 5 }, shape: 'ellipse', + shapeProperties: { + borderDashes: false + }, size: 25, title: undefined, value: undefined, @@ -28383,10 +28392,14 @@ return /******/ (function(modules) { // webpackBootstrap var borderRadius = 6; ctx.roundRect(this.left, this.top, this.width, this.height, borderRadius); + //draw dashed border if enabled + this.enableBorderDashes(ctx); // draw shadow if enabled this.enableShadow(ctx); ctx.fill(); + //disable dashed border for other elements + this.disableBorderDashes(ctx); // disable shadows for other elements. this.disableShadow(ctx); @@ -28484,6 +28497,20 @@ return /******/ (function(modules) { // webpackBootstrap ctx.shadowOffsetY = 0; } } + }, { + key: 'enableBorderDashes', + value: function enableBorderDashes(ctx) { + if (this.options.shapeProperties.borderDashes !== false) { + ctx.setLineDash(this.options.shapeProperties.borderDashes); + } + } + }, { + key: 'disableBorderDashes', + value: function disableBorderDashes(ctx) { + if (this.options.shapeProperties.borderDashes == false) { + ctx.setLineDash([0]); + } + } }]); return NodeBase; @@ -28674,14 +28701,17 @@ return /******/ (function(modules) { // webpackBootstrap ctx.lineWidth = selected ? selectionLineWidth : borderWidth; ctx.lineWidth *= this.networkScaleInv; ctx.lineWidth = Math.min(this.width, ctx.lineWidth); - ctx.fillStyle = selected ? this.options.color.highlight.background : hover ? this.options.color.hover.background : this.options.color.background; ctx.circle(x, y, size); + //draw dashed border if enabled + this.enableBorderDashes(ctx); // draw shadow if enabled this.enableShadow(ctx); ctx.fill(); + //disable dashed border for other elements + this.disableBorderDashes(ctx); // disable shadows for other elements. this.disableShadow(ctx); @@ -28899,10 +28929,14 @@ return /******/ (function(modules) { // webpackBootstrap ctx.fillStyle = selected ? this.options.color.highlight.background : hover ? this.options.color.hover.background : this.options.color.background; ctx.database(x - this.width / 2, y - this.height * 0.5, this.width, this.height); + //draw dashed border if enabled + this.enableBorderDashes(ctx); // draw shadow if enabled this.enableShadow(ctx); ctx.fill(); + //disable dashed border for other elements + this.disableBorderDashes(ctx); // disable shadows for other elements. this.disableShadow(ctx); @@ -29060,10 +29094,14 @@ return /******/ (function(modules) { // webpackBootstrap ctx.fillStyle = selected ? this.options.color.highlight.background : hover ? this.options.color.hover.background : this.options.color.background; ctx[shape](x, y, this.options.size); + //draw dashed border if enabled + this.enableBorderDashes(ctx); // draw shadow if enabled this.enableShadow(ctx); ctx.fill(); + //disable dashed border for other elements + this.disableBorderDashes(ctx); // disable shadows for other elements. this.disableShadow(ctx); @@ -29220,10 +29258,14 @@ return /******/ (function(modules) { // webpackBootstrap ctx.fillStyle = selected ? this.options.color.highlight.background : hover ? this.options.color.hover.background : this.options.color.background; ctx.ellipse(this.left, this.top, this.width, this.height); + //draw dashed border if enabled + this.enableBorderDashes(ctx); // draw shadow if enabled this.enableShadow(ctx); ctx.fill(); + //disable dashed border for other elements + this.disableBorderDashes(ctx); // disable shadows for other elements. this.disableShadow(ctx); @@ -39695,6 +39737,10 @@ return /******/ (function(modules) { // webpackBootstrap __type__: { object: object, boolean: boolean } }, shape: { string: ['ellipse', 'circle', 'database', 'box', 'text', 'image', 'circularImage', 'diamond', 'dot', 'star', 'triangle', 'triangleDown', 'square', 'icon'] }, + shapeProperties: { + borderDashes: { boolean: boolean, array: array }, + __type__: { object: object } + }, size: { number: number }, title: { string: string, 'undefined': 'undefined' }, value: { number: number, 'undefined': 'undefined' }, @@ -39826,6 +39872,9 @@ return /******/ (function(modules) { // webpackBootstrap y: [5, -30, 30, 1] }, shape: ['ellipse', 'box', 'circle', 'database', 'diamond', 'dot', 'square', 'star', 'text', 'triangle', 'triangleDown'], + shapeProperties: { + borderDashes: false + }, size: [25, 0, 200, 1] }, edges: { diff --git a/dist/vis.map b/dist/vis.map index 88bcd543..bceb7fbf 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","allOptions","convertDot","input","DOTToGraph","convertGephi","options","parseGephi","Graph","Error","moment","hammer","Hammer","keycharm","data","conversion","props","dot","top","width","height","content","marginLeft","undefined","start","prototype","isVisible","range","interval","end","redraw","dom","point","document","createElement","className","appendChild","dirty","parent","parentNode","foreground","displayed","_updateContents","_updateTitle","_updateDataAttributes","_updateStyle","editable","updateTime","updateGroup","selected","offsetWidth","offsetHeight","style","left","_repaintDeleteButton","show","hide","removeChild","repositionX","toScreen","repositionY","orientation","item","getWidthLeft","getWidthRight","hasOwnProperty","select","unselect","setData","groupChanged","group","itemSet","_moveToGroup","setParent","anchor","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","split","events","match","propagatedHandler","srcEvent","_handled","stopped","firstTarget","elem","_handlers","_options","Manager","PropagatingHammer","o","create","extend","wrapper","pointerType","isFirst","target","handler","forEach","push","off","filter","h","emit","eventType","destroy","exportName","setTimeoutContext","fn","timeout","context","setTimeout","bindFn","invokeArrayArg","arg","each","obj","iterator","dest","src","merge","inherit","child","base","properties","childP","baseP","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","isFinal","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","background","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","groupTemplate","labelObj","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","setArmRotation","setArmLength","eye","dataTable","dataPoints","colX","colY","colZ","colValue","colFilter","xMin","xStep","xMax","yMin","yStep","yMax","zMin","zStep","zMax","valueMin","valueMax","xBarWidth","yBarWidth","axisColor","gridColor","dataColor","fill","stroke","strokeWidth","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","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","bottom","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","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","lineJoin","lineCap","transBottom","dist","sortDepth","aDiff","bDiff","crossproduct","crossProduct","_getStrokeWidth","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","line","borderRadius","boxShadow","borderLeft","contentWidth","contentHeight","lineHeight","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","axis","maxHeight","minHeight","_create","body","domProps","emitter","bind","hiddenDates","timeAxis","_toScreen","toGlobalScreen","_toGlobalScreen","toTime","_toTime","toGlobalTime","_toGlobalTime","timeAxis2","currentTime","groupsData","getEventProperties","oncontextmenu","setGroups","setItems","_redraw","Core","Configurator","Validator","printStyle","configureOptions","_createConfigurator","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","drawPoints","onRender","clickToUse","activator","_initAutoResize","component","configurator","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","align","groupOrder","selectable","multiselect","onAdd","onUpdate","onMove","onRemove","onMoving","itemOptions","itemListeners","_onAdd","_onUpdate","_onRemove","groupListeners","_onAddGroups","_onUpdateGroups","_onRemoveGroups","groupIds","stackDirty","touchParams","UNGROUPED","BACKGROUND","box","_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","updateTimeAllowed","initialStart","initialEnd","updateGroupAllowed","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","itemIndex","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","itemSetHeight","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","onClick","_hasParent","deactivate","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","_clean","_handleObject","_makeItem","_makeHeader","generateButton","_printOptions","onmouseover","onmouseout","optionsContainer","_push","insertTo","path","_arguments","_this2","_len","_key","div","objectLabel","selectedValue","_update","_makeLabel","err","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","getOptions","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","__type__","checkFields","referenceOption","refOptionObj","optionType","refOptionType","print","printLocation","localSearch","findInOptions","globalSearch","localSearchThreshold","globalSearchThreshold","indexMatch","closestMatch","recursive","closestMatchPath","lowerCaseOption","op","levenshteinDistance","matrix","boolean","any","function","null","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","_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","getGroupTemplate","callbackResult","getCallback","Bargraph","drawData","barPoints","heightOffset","_getSafeDrawData","nextKey","prevKey","side","iconSize","iconSpacing","textArea","scrollableHeight","drawLegendIcons","paddingTop","nodes","nodeIndices","edges","edgeIndices","eventListeners","onTap","onDoubleTap","onHold","onDragStart","onDrag","onDragEnd","onPinch","onMouseMove","onContext","functions","createNode","createEdge","view","bindEventListeners","images","_modulesGroups2","_modulesCanvas2","selectionHandler","_modulesSelectionHandler2","interactionHandler","_modulesInteractionHandler2","_modulesView2","renderer","_modulesCanvasRenderer2","_modulesPhysicsEngine2","layoutEngine","_modulesLayoutEngine2","clustering","_modulesClustering2","manipulation","_modulesManipulationSystem2","nodesHandler","_modulesNodesHandler2","edgesHandler","_modulesEdgesHandler2","_modulesGroups","_modulesNodesHandler","_modulesEdgesHandler","_modulesPhysicsEngine","_modulesClustering","_modulesCanvasRenderer","_modulesCanvas","_modulesView","_modulesInteractionHandler","_modulesSelectionHandler","_modulesLayoutEngine","_modulesManipulationSystem","_sharedConfigurator","_sharedConfigurator2","_sharedValidator","_sharedValidator2","_optionsJs","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","getOptionsFromConfigurator","Groups","defaultIndex","groupsArray","groupIndex","defaultGroups","useDefaultGroups","optionFields","groupName","groupname","_componentsNode","_componentsNode2","_componentsSharedLabel","_componentsSharedLabel2","NodesHandler","nodesListeners","borderWidthSelected","brokenImage","fixed","face","strokeColor","image","labelHighlightBold","level","mass","scaling","maxVisible","drawThreshold","customScalingFunction","shadow","shape","parseOptions","updateShape","updateLabelModule","_reset","doNotEmit","oldNodesData","newNodes","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","sliceIterator","_arr","_n","_e","_s","Symbol","Label","pointToSelf","yLine","labelDirty","baseline","viewFontSize","calculateLabelSize","_drawBackground","_drawText","lineMargin","fontSize","_getColor2","_getColor","_getColor22","fontColor","_setAlignment2","_setAlignment","_setAlignment22","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","edgeType","cleanup","colorDirty","_edgesBezierEdgeDynamic","_edgesBezierEdgeDynamic2","_edgesBezierEdgeStatic","_edgesBezierEdgeStatic2","_edgesStraightEdge","_edgesStraightEdge2","Edge","baseWidth","connected","_setInteractionWidths","changeInType","togglePhysics","attachEdge","detachEdge","widthDiff","via","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","positionBezierNode","parentEdgeId","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","_getCircleData2","_getCircleData","_getCircleData22","_circle","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","initialStabilizationEmitted","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","randomSeed","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","seededRandom","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","releaseFunction","positions","clusterPosition","newPositions","clusteredNode","_clusterNode","newEdge","removeIds","nodesArray","average","averageSquared","hubCounter","largestHub","letiance","standardDeviation","hubThreshold","_Node2","_Node3","Cluster","_Node","requestAnimationFrame","mozRequestAnimationFrame","webkitRequestAnimationFrame","msRequestAnimationFrame","CanvasRenderer","redrawRequested","renderingActive","renderRequests","allowRedraw","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","_determineIfDifferent2","_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","configureKeyboardBindings","loadNavigationElements","cleanNavigation","navigationDOM","navigationDivs","navigationDivActions","_fit","bindToRedraw","_stopMovement","boundAction","unbindFromRedraw","Popup","doShow","SelectionHandler","hoverObj","selectConnectedEdges","hoverConnectedEdges","updateSelection","selectionChanged","deselectObject","emptySelection","DOM","highlightEdges","_selectConnectedEdges","_addToSelection","_removeFromSelection","canvasPos","returnNode","positionObject","_getAllNodesOverlappingWith","_getEdgesOverlappingWith","returnEdge","_getAllEdgesOverlappingWith","clusterSize","_addToHover","hoverChanged","blurObject","_hoverConnectedEdges","edgeIds","idArray","RangeError","LayoutEngine","initialRandomSeed","optionsBackup","hierarchical","levelSeparation","sortMethod","hierarchicalLevels","setupHierarchicalLayout","prevHierarchicalState","adaptAllOptions","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","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","_this5","defaultData","sourceNodeId","targetNodeId","_this6","_this7","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","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","allOptions","convertDot","input","DOTToGraph","convertGephi","options","parseGephi","Graph","Error","moment","hammer","Hammer","keycharm","data","conversion","props","dot","top","width","height","content","marginLeft","undefined","start","prototype","isVisible","range","interval","end","redraw","dom","point","document","createElement","className","appendChild","dirty","parent","parentNode","foreground","displayed","_updateContents","_updateTitle","_updateDataAttributes","_updateStyle","editable","updateTime","updateGroup","selected","offsetWidth","offsetHeight","style","left","_repaintDeleteButton","show","hide","removeChild","repositionX","toScreen","repositionY","orientation","item","getWidthLeft","getWidthRight","hasOwnProperty","select","unselect","setData","groupChanged","group","itemSet","_moveToGroup","setParent","anchor","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","split","events","match","propagatedHandler","srcEvent","_handled","stopped","firstTarget","elem","_handlers","_options","Manager","PropagatingHammer","o","create","extend","wrapper","pointerType","isFirst","target","handler","forEach","push","off","filter","h","emit","eventType","destroy","exportName","setTimeoutContext","fn","timeout","context","setTimeout","bindFn","invokeArrayArg","arg","each","obj","iterator","dest","src","merge","inherit","child","base","properties","childP","baseP","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","isFinal","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","background","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","groupTemplate","labelObj","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","setArmRotation","setArmLength","eye","dataTable","dataPoints","colX","colY","colZ","colValue","colFilter","xMin","xStep","xMax","yMin","yStep","yMax","zMin","zStep","zMax","valueMin","valueMax","xBarWidth","yBarWidth","axisColor","gridColor","dataColor","fill","stroke","strokeWidth","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","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","bottom","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","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","lineJoin","lineCap","transBottom","dist","sortDepth","aDiff","bDiff","crossproduct","crossProduct","_getStrokeWidth","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","line","borderRadius","boxShadow","borderLeft","contentWidth","contentHeight","lineHeight","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","axis","maxHeight","minHeight","_create","body","domProps","emitter","bind","hiddenDates","timeAxis","_toScreen","toGlobalScreen","_toGlobalScreen","toTime","_toTime","toGlobalTime","_toGlobalTime","timeAxis2","currentTime","groupsData","getEventProperties","oncontextmenu","setGroups","setItems","_redraw","Core","Configurator","Validator","printStyle","configureOptions","_createConfigurator","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","drawPoints","onRender","clickToUse","activator","_initAutoResize","component","configurator","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","align","groupOrder","selectable","multiselect","onAdd","onUpdate","onMove","onRemove","onMoving","itemOptions","itemListeners","_onAdd","_onUpdate","_onRemove","groupListeners","_onAddGroups","_onUpdateGroups","_onRemoveGroups","groupIds","stackDirty","touchParams","UNGROUPED","BACKGROUND","box","_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","updateTimeAllowed","initialStart","initialEnd","updateGroupAllowed","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","itemIndex","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","itemSetHeight","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","onClick","_hasParent","deactivate","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","_clean","_handleObject","_makeItem","_makeHeader","generateButton","_printOptions","onmouseover","onmouseout","optionsContainer","_push","insertTo","path","_arguments","_this2","_len","_key","div","objectLabel","selectedValue","_update","_makeLabel","err","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","getOptions","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","__type__","checkFields","referenceOption","refOptionObj","optionType","refOptionType","print","printLocation","localSearch","findInOptions","globalSearch","localSearchThreshold","globalSearchThreshold","indexMatch","closestMatch","recursive","closestMatchPath","lowerCaseOption","op","levenshteinDistance","matrix","boolean","any","function","null","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","_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","getGroupTemplate","callbackResult","getCallback","Bargraph","drawData","barPoints","heightOffset","_getSafeDrawData","nextKey","prevKey","side","iconSize","iconSpacing","textArea","scrollableHeight","drawLegendIcons","paddingTop","nodes","nodeIndices","edges","edgeIndices","eventListeners","onTap","onDoubleTap","onHold","onDragStart","onDrag","onDragEnd","onPinch","onMouseMove","onContext","functions","createNode","createEdge","view","bindEventListeners","images","_modulesGroups2","_modulesCanvas2","selectionHandler","_modulesSelectionHandler2","interactionHandler","_modulesInteractionHandler2","_modulesView2","renderer","_modulesCanvasRenderer2","_modulesPhysicsEngine2","layoutEngine","_modulesLayoutEngine2","clustering","_modulesClustering2","manipulation","_modulesManipulationSystem2","nodesHandler","_modulesNodesHandler2","edgesHandler","_modulesEdgesHandler2","_modulesGroups","_modulesNodesHandler","_modulesEdgesHandler","_modulesPhysicsEngine","_modulesClustering","_modulesCanvasRenderer","_modulesCanvas","_modulesView","_modulesInteractionHandler","_modulesSelectionHandler","_modulesLayoutEngine","_modulesManipulationSystem","_sharedConfigurator","_sharedConfigurator2","_sharedValidator","_sharedValidator2","_optionsJs","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","getOptionsFromConfigurator","Groups","defaultIndex","groupsArray","groupIndex","defaultGroups","useDefaultGroups","optionFields","groupName","groupname","_componentsNode","_componentsNode2","_componentsSharedLabel","_componentsSharedLabel2","NodesHandler","nodesListeners","borderWidthSelected","brokenImage","fixed","face","strokeColor","image","labelHighlightBold","level","mass","scaling","maxVisible","drawThreshold","customScalingFunction","shadow","shape","shapeProperties","borderDashes","parseOptions","updateShape","updateLabelModule","_reset","doNotEmit","oldNodesData","newNodes","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","sliceIterator","_arr","_n","_e","_s","Symbol","Label","pointToSelf","yLine","labelDirty","baseline","viewFontSize","calculateLabelSize","_drawBackground","_drawText","lineMargin","fontSize","_getColor2","_getColor","_getColor22","fontColor","_setAlignment2","_setAlignment","_setAlignment22","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","enableBorderDashes","enableShadow","disableBorderDashes","disableShadow","NodeBase","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY","setLineDash","_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","edgeType","cleanup","colorDirty","_edgesBezierEdgeDynamic","_edgesBezierEdgeDynamic2","_edgesBezierEdgeStatic","_edgesBezierEdgeStatic2","_edgesStraightEdge","_edgesStraightEdge2","Edge","baseWidth","connected","_setInteractionWidths","changeInType","togglePhysics","attachEdge","detachEdge","widthDiff","via","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","positionBezierNode","parentEdgeId","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","_getCircleData2","_getCircleData","_getCircleData22","_circle","pattern","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","initialStabilizationEmitted","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","randomSeed","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","seededRandom","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","releaseFunction","positions","clusterPosition","newPositions","clusteredNode","_clusterNode","newEdge","removeIds","nodesArray","average","averageSquared","hubCounter","largestHub","letiance","standardDeviation","hubThreshold","_Node2","_Node3","Cluster","_Node","requestAnimationFrame","mozRequestAnimationFrame","webkitRequestAnimationFrame","msRequestAnimationFrame","CanvasRenderer","redrawRequested","renderingActive","renderRequests","allowRedraw","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","_determineIfDifferent2","_determineIfDifferent","nodesChanges","edgesChanges","selectObject","selectionObj","xFixed","yFixed","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","configureKeyboardBindings","loadNavigationElements","cleanNavigation","navigationDOM","navigationDivs","navigationDivActions","_fit","bindToRedraw","_stopMovement","boundAction","unbindFromRedraw","Popup","doShow","SelectionHandler","hoverObj","selectConnectedEdges","hoverConnectedEdges","updateSelection","selectionChanged","deselectObject","emptySelection","DOM","highlightEdges","_selectConnectedEdges","_addToSelection","_removeFromSelection","canvasPos","returnNode","positionObject","_getAllNodesOverlappingWith","_getEdgesOverlappingWith","returnEdge","_getAllEdgesOverlappingWith","clusterSize","_addToHover","hoverChanged","blurObject","_hoverConnectedEdges","edgeIds","idArray","RangeError","LayoutEngine","initialRandomSeed","optionsBackup","hierarchical","levelSeparation","sortMethod","hierarchicalLevels","setupHierarchicalLayout","prevHierarchicalState","adaptAllOptions","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","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","_this5","defaultData","sourceNodeId","targetNodeId","_this6","_this7","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","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 feb43a17..02047177 100644 --- a/dist/vis.min.js +++ b/dist/vis.min.js @@ -4,8 +4,8 @@ * * A dynamic, browser-based visualization library. * - * @version 4.4.0 - * @date 2015-07-03 + * @version 4.4.1-SNAPSHOT + * @date 2015-07-08 * * @license * Copyright (C) 2011-2014 Almende B.V, http://almende.com @@ -22,22 +22,22 @@ * * 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(39),PointItem:i(1),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),allOptions:i(108)},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),e.keycharm=i(43)},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.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?d._handlers[t]=o:(i.off(t,s),delete d._handlers[t]))}),d},d.emit=function(e,o){t=o.target,i.emit(e,o)},d.destroy=function(){delete i.element.hammer,d._handlers={},i.destroy()},d}})},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=R(a,h),e.distance=F(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===Tt||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>Ct||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 F(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 R(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 R(e[1],e[0],Ht)-R(t[1],t[0],Ht)}function H(t,e){return F(e[0],e[1],Ht)/F(t[0],t[1],Ht)}function Y(){this.evEl=Wt,this.evWin=Gt,this.allow=!0,this.pressed=!1,T.apply(this,arguments)}function W(){this.evEl=qt,this.evWin=Xt,T.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}function G(){this.evTarget=Jt,this.evWin=Kt,this.started=!1,T.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={},T.apply(this,arguments)}function q(t,e){var i=k(t.touches),o=this.targetIds;if(e&(Tt|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===Tt)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:Tt,touchmove:Et,touchend:St,touchcancel:Pt},Jt="touchstart",Kt="touchstart touchmove touchend touchcancel";p(G,T,{handler:function(t){var e=Zt[t.type];if(e===Tt&&(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:Tt,touchmove:Et,touchend:St,touchcancel:Pt},$t="touchstart touchmove touchend touchcancel";p(V,T,{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,T,{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()))}),J(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&Ft?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;K.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,K,{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&Tt)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|Ft,pointers:1},getTouchAction:function(){return it.prototype.getTouchAction.call(this)},attrTest:function(t){var e,i=this.options.direction;return i&(Bt|Ft)?e=t.velocity:i&Bt?e=t.velocityX:i&Ft&&(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,K,{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 C(t){var e,i,o={};for(i in t)r(t,i)&&(e=D(i),e&&(o[e]=t[i]));return o}function T(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++)Ri[o[e]]?o[e]=Ri[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()),Fi[e]||(Fi[e]=A(e)),Fi[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 F(t,e,i){to[t]="function"==typeof e?e:function(t){return t&&i?i:e}}function R(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 J(){return G(this.year(),this.month())}function K(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(Ki)&&(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=Ct(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(Ct(),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(Ct(),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),Ri[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),K(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=C(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(K(i)):(o(s)?xt(t):s?wt(t):n(i)?t._d=i:Ot(t),e=new f(K(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 Ct(t,e,i,o){return Dt(t,e,i,o,!1)}function Tt(t,e){var i,n;if(1===e.length&&o(e[0])&&(e=e[0]),!e.length)return Ct();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(Ki)||[],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:+Ct(t))-+o,o._d.setTime(+o._d+s),e.updateOffset(o,!1),o):Ct(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 Ft(t,e){return null!=t?("string"!=typeof t&&(t=-t),this.utcOffset(t,e),this):-this.utcOffset()}function Rt(t){return this.utcOffset(0,t)}function 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?Ct(t).utcOffset():0,(this.utcOffset()-t)%60===0}function Wt(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function Gt(){if(this._a){var t=this._isUTC?h(this._a):Ct(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=Kt(Ct(s.from),Ct(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 Jt(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 Kt(t,e){var i;return e=At(e,t),t.isBefore(e)?i=Jt(t,e):(i=Jt(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||Ct(),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,Ct(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:Ct(t),+this>+t):(i=m(t)?+t:+Ct(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:Ct(t),+t>+this):(i=m(t)?+t:+Ct(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=Ct([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 Re(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 Ct(1e3*t)}function Je(){return Ct.apply(null,arguments).parseZone()}function Ke(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 Ci(t,e){return void 0===dn[t]?!1:void 0===e?dn[t]:(dn[t]=e,!0)}function Ti(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,Fi={},Ri={},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+/,Ji=/[+-]?\d+/,Ki=/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"),F("M",Ui),F("MM",Ui,Hi),F("MMM",$i),F("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"),F("Y",Ji),F("YY",Ui,Hi),F("YYYY",qi,Wi),F("YYYYY",Xi,Gi),F("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=T("FullYear",!1);N("w",["ww",2],"wo","week"),N("W",["WW",2],"Wo","isoWeek"),O("week","w"),O("isoWeek","W"),F("w",Ui),F("ww",Ui,Hi),F("W",Ui),F("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"),F("DDD",Vi),F("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=Ct.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=Ct.apply(null,arguments);return t>this?this:t});Nt("Z",":"),Nt("ZZ",""),F("Z",Ki),F("ZZ",Ki),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}),Ce("gggg","weekYear"),Ce("ggggg","weekYear"),Ce("GGGG","isoWeekYear"),Ce("GGGGG","isoWeekYear"),O("weekYear","gg"),O("isoWeekYear","GG"),F("G",Ji),F("g",Ji),F("GG",Ui,Hi),F("gg",Ui,Hi),F("GGGG",qi,Wi),F("gggg",qi,Wi),F("GGGGG",Xi,Gi),F("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"),F("Q",ji),H("Q",function(t,e){e[oo]=3*(v(t)-1)}),N("D",["DD",2],"Do","date"),O("date","D"),F("D",Ui),F("DD",Ui,Hi),F("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 Co=T("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"),F("d",Ui),F("e",Ui),F("E",Ui),F("dd",$i),F("ddd",$i),F("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 To="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"),F("a",We),F("A",We),F("H",Ui),F("h",Ui),F("HH",Ui,Hi),F("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=T("Hours",!0);N("m",["mm",2],0,"minute"),O("minute","m"),F("m",Ui),F("mm",Ui,Hi),H(["m","mm"],ro);var No=T("Minutes",!1);N("s",["ss",2],0,"second"),O("second","s"),F("s",Ui),F("ss",Ui,Hi),H(["s","ss"],ao);var zo=T("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"),F("S",Vi,ji),F("SS",Vi,Hi),F("SSS",Vi,Yi),F("SSSS",Zi),H(["S","SS","SSS","SSSS"],function(t,e){e[ho]=v(1e3*("0."+t))});var Ao=T("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=J,Lo.week=Lo.weeks=ct,Lo.isoWeek=Lo.isoWeeks=pt,Lo.weeksInYear=Ie,Lo.isoWeeksInYear=Pe,Lo.date=Co,Lo.day=Lo.days=Re,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=Rt,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.",Co),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",Ft);var Bo=Lo,Fo={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},Ro={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=Fo,Go.calendar=Ke,Go._longDateFormat=Ro,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=To,Go.weekdaysMin=Be,Go._weekdaysMin=So,Go.weekdaysShort=Le,Go._weekdaysShort=Eo,Go.weekdaysParse=Fe,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"),Jo=_i("d"),Ko=_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=Jo,un.asWeeks=Ko,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=Ti,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"),F("x",Ji),F("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(Ct),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=Je,e.localeData=M,e.isDuration=It,e.monthsShort=hi,e.weekdaysMin=ui,e.defineLocale=k,e.weekdaysShort=li,e.normalizeUnits=D,e.relativeTimeThreshold=Ci;var cn=e;return cn})}).call(e,i(10)(t))},function(t,e){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children=[],t.webpackPolyfill=1),t}},function(t,e){function i(t){throw new Error("Cannot find module '"+t+"'.")}i.keys=function(){return[]},i.resolve=i,t.exports=i,i.id=11},function(t,e){(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){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.style?(a=e.getSVGElement("circle",n,s),a.setAttributeNS(null,"cx",t),a.setAttributeNS(null,"cy",i),a.setAttributeNS(null,"r",.5*o.size)):(a=e.getSVGElement("rect",n,s),a.setAttributeNS(null,"x",t-.5*o.size),a.setAttributeNS(null,"y",i-.5*o.size),a.setAttributeNS(null,"width",o.size),a.setAttributeNS(null,"height",o.size)),void 0!==o.style&&a.setAttributeNS(null,"style",o.style),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)}},i.prototype.flush=function(){for(;this._queue.length>0;){var t=this._queue.shift();t.fn.apply(t.context||t.fn,t.args||[])}},t.exports=i},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.camera.setArmRotation(1,.5),this.camera.setArmLength(1.7),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.axisColor="#4D4D4D",this.gridColor="#D3D3D3",this.dataColor={fill:"#7DC1FF",stroke:"#3267D2",strokeWidth:1},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.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?d._handlers[t]=o:(i.off(t,s),delete d._handlers[t]))}),d},d.emit=function(e,o){t=o.target,i.emit(e,o)},d.destroy=function(){delete i.element.hammer,d._handlers={},i.destroy()},d}})},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=L(o);e.timeStamp=gt(),e.deltaTime=e.timeStamp-s.timeStamp,e.angle=R(a,h),e.distance=F(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===Tt||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>Ct||r.velocity===a)){var d=r.deltaX-e.deltaX,l=r.deltaY-e.deltaY,u=A(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 A(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?Lt:At}function F(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 R(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 R(e[1],e[0],Ht)-R(t[1],t[0],Ht)}function H(t,e){return F(e[0],e[1],Ht)/F(t[0],t[1],Ht)}function Y(){this.evEl=Wt,this.evWin=Gt,this.allow=!0,this.pressed=!1,T.apply(this,arguments)}function W(){this.evEl=qt,this.evWin=Xt,T.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}function G(){this.evTarget=Jt,this.evWin=Kt,this.started=!1,T.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={},T.apply(this,arguments)}function q(t,e){var i=k(t.touches),o=this.targetIds;if(e&(Tt|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===Tt)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:Tt,touchmove:Et,touchend:St,touchcancel:Pt},Jt="touchstart",Kt="touchstart touchmove touchend touchcancel";p(G,T,{handler:function(t){var e=Zt[t.type];if(e===Tt&&(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:Tt,touchmove:Et,touchend:St,touchcancel:Pt},$t="touchstart touchmove touchend touchcancel";p(V,T,{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,T,{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()))}),J(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&Ft?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;K.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?Lt:At,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,K,{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&Tt)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|Ft,pointers:1},getTouchAction:function(){return it.prototype.getTouchAction.call(this)},attrTest:function(t){var e,i=this.options.direction;return i&(Bt|Ft)?e=t.velocity:i&Bt?e=t.velocityX:i&Ft&&(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,K,{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();Li[i]=Li[i+"s"]=Li[e]=t}function D(t){return"string"==typeof t?Li[t]||Li[t.toLowerCase()]:void 0}function C(t){var e,i,o={};for(i in t)r(t,i)&&(e=D(i),e&&(o[e]=t[i]));return o}function T(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++)Ri[o[e]]?o[e]=Ri[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 A(t,e){return t.isValid()?(e=B(e,t.localeData()),Fi[e]||(Fi[e]=L(e)),Fi[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 F(t,e,i){to[t]="function"==typeof e?e:function(t){return t&&i?i:e}}function R(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 J(){return G(this.year(),this.month())}function K(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(Ki)&&(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=Ct(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(Ct(),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(Ct(),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(Ai)||[],i=0;i0&&l(t).unusedInput.push(r),a=a.slice(a.indexOf(o)+o.length),d+=o.length),Ri[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),K(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=C(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(K(i)):(o(s)?xt(t):s?wt(t):n(i)?t._d=i:Ot(t),e=new f(K(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 Ct(t,e,i,o){return Dt(t,e,i,o,!1)}function Tt(t,e){var i,n;if(1===e.length&&o(e[0])&&(e=e[0]),!e.length)return Ct();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(Ki)||[],i=e[e.length-1]||[],o=(i+"").match(_o)||["-",0,0],n=+(60*o[1])+v(o[2]);return"+"===o[0]?n:-n}function Lt(t,i){var o,s;return i._isUTC?(o=i.clone(),s=(m(t)||n(t)?+t:+Ct(t))-+o,o._d.setTime(+o._d+s),e.updateOffset(o,!1),o):Ct(t).local()}function At(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=At(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:At(this)}function Ft(t,e){return null!=t?("string"!=typeof t&&(t=-t),this.utcOffset(t,e),this):-this.utcOffset()}function Rt(t){return this.utcOffset(0,t)}function jt(t){return this._isUTC&&(this.utcOffset(0,t),this._isUTC=!1,t&&this.subtract(At(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?Ct(t).utcOffset():0,(this.utcOffset()-t)%60===0}function Wt(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function Gt(){if(this._a){var t=this._isUTC?h(this._a):Ct(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=Kt(Ct(s.from),Ct(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 Jt(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 Kt(t,e){var i;return e=Lt(e,t),t.isBefore(e)?i=Jt(t,e):(i=Jt(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||Ct(),i=Lt(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,Ct(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:Ct(t),+this>+t):(i=m(t)?+t:+Ct(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:Ct(t),+t>+this):(i=m(t)?+t:+Ct(t),+this.clone().endOf(e)t?Math.ceil(t):Math.floor(t)}function ae(t,e,i){var o,n,s=Lt(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=Ct([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 Re(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 Ct(1e3*t)}function Je(){return Ct.apply(null,arguments).parseZone()}function Ke(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 Ci(t,e){return void 0===dn[t]?!1:void 0===e?dn[t]:(dn[t]=e,!0)}function Ti(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={},Li={},Ai=/(\[[^\[]*\])|(\\)?(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,Fi={},Ri={},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+/,Ji=/[+-]?\d+/,Ki=/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"),F("M",Ui),F("MM",Ui,Hi),F("MMM",$i),F("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"),F("Y",Ji),F("YY",Ui,Hi),F("YYYY",qi,Wi),F("YYYYY",Xi,Gi),F("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=T("FullYear",!1);N("w",["ww",2],"wo","week"),N("W",["WW",2],"Wo","isoWeek"),O("week","w"),O("isoWeek","W"),F("w",Ui),F("ww",Ui,Hi),F("W",Ui),F("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"),F("DDD",Vi),F("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=Ct.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=Ct.apply(null,arguments);return t>this?this:t});Nt("Z",":"),Nt("ZZ",""),F("Z",Ki),F("ZZ",Ki),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}),Ce("gggg","weekYear"),Ce("ggggg","weekYear"),Ce("GGGG","isoWeekYear"),Ce("GGGGG","isoWeekYear"),O("weekYear","gg"),O("isoWeekYear","GG"),F("G",Ji),F("g",Ji),F("GG",Ui,Hi),F("gg",Ui,Hi),F("GGGG",qi,Wi),F("gggg",qi,Wi),F("GGGGG",Xi,Gi),F("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"),F("Q",ji),H("Q",function(t,e){e[oo]=3*(v(t)-1)}),N("D",["DD",2],"Do","date"),O("date","D"),F("D",Ui),F("DD",Ui,Hi),F("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 Co=T("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"),F("d",Ui),F("e",Ui),F("E",Ui),F("dd",$i),F("ddd",$i),F("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 To="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"),F("a",We),F("A",We),F("H",Ui),F("h",Ui),F("HH",Ui,Hi),F("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=T("Hours",!0);N("m",["mm",2],0,"minute"),O("minute","m"),F("m",Ui),F("mm",Ui,Hi),H(["m","mm"],ro);var No=T("Minutes",!1);N("s",["ss",2],0,"second"),O("second","s"),F("s",Ui),F("ss",Ui,Hi),H(["s","ss"],ao);var zo=T("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"),F("S",Vi,ji),F("SS",Vi,Hi),F("SSS",Vi,Yi),F("SSSS",Zi),H(["S","SS","SSS","SSSS"],function(t,e){e[ho]=v(1e3*("0."+t))});var Lo=T("Milliseconds",!1);N("z",0,0,"zoneAbbr"),N("zz",0,0,"zoneName");var Ao=f.prototype;Ao.add=Mo,Ao.calendar=te,Ao.clone=ee,Ao.diff=ae,Ao.endOf=be,Ao.format=ue,Ao.from=ce,Ao.fromNow=pe,Ao.to=fe,Ao.toNow=me,Ao.get=P,Ao.invalidAt=De,Ao.isAfter=ie,Ao.isBefore=oe,Ao.isBetween=ne,Ao.isSame=se,Ao.isValid=Me,Ao.lang=Do,Ao.locale=ve,Ao.localeData=ge,Ao.max=wo,Ao.min=bo,Ao.parsingFlags=Oe,Ao.set=P,Ao.startOf=ye,Ao.subtract=Oo,Ao.toArray=ke,Ao.toDate=xe,Ao.toISOString=le,Ao.toJSON=le,Ao.toString=de,Ao.unix=_e,Ao.valueOf=we,Ao.year=go,Ao.isLeapYear=at,Ao.weekYear=Ee,Ao.isoWeekYear=Se,Ao.quarter=Ao.quarters=Ne,Ao.month=Z,Ao.daysInMonth=J,Ao.week=Ao.weeks=ct,Ao.isoWeek=Ao.isoWeeks=pt,Ao.weeksInYear=Ie,Ao.isoWeeksInYear=Pe,Ao.date=Co,Ao.day=Ao.days=Re,Ao.weekday=je,Ao.isoWeekday=He,Ao.dayOfYear=mt,Ao.hour=Ao.hours=Io,Ao.minute=Ao.minutes=No,Ao.second=Ao.seconds=zo,Ao.millisecond=Ao.milliseconds=Lo,Ao.utcOffset=Bt,Ao.utc=Rt,Ao.local=jt,Ao.parseZone=Ht,Ao.hasAlignedHourOffset=Yt,Ao.isDST=Wt,Ao.isDSTShifted=Gt,Ao.isLocal=Ut,Ao.isUtcOffset=Vt,Ao.isUtc=qt,Ao.isUTC=qt,Ao.zoneAbbr=qe,Ao.zoneName=Xe,Ao.dates=$("dates accessor is deprecated. Use date instead.",Co),Ao.months=$("months accessor is deprecated. Use month instead",Z),Ao.years=$("years accessor is deprecated. Use year instead",go),Ao.zone=$("moment().zone is deprecated, use moment().utcOffset instead. https://github.com/moment/moment/issues/1779",Ft);var Bo=Ao,Fo={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},Ro={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=Fo,Go.calendar=Ke,Go._longDateFormat=Ro,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=Le,Go._weekdays=To,Go.weekdaysMin=Be,Go._weekdaysMin=So,Go.weekdaysShort=Ae,Go._weekdaysShort=Eo,Go.weekdaysParse=Fe,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"),Jo=_i("d"),Ko=_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=Jo,un.asWeeks=Ko,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=Ti,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"),F("x",Ji),F("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(Ct),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=Je,e.localeData=M,e.isDuration=It,e.monthsShort=hi,e.weekdaysMin=ui,e.defineLocale=k,e.weekdaysShort=li,e.normalizeUnits=D,e.relativeTimeThreshold=Ci;var cn=e;return cn})}).call(e,i(10)(t))},function(t,e){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children=[],t.webpackPolyfill=1),t}},function(t,e){function i(t){throw new Error("Cannot find module '"+t+"'.")}i.keys=function(){return[]},i.resolve=i,t.exports=i,i.id=11},function(t,e){(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){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.style?(a=e.getSVGElement("circle",n,s),a.setAttributeNS(null,"cx",t),a.setAttributeNS(null,"cy",i),a.setAttributeNS(null,"r",.5*o.size)):(a=e.getSVGElement("rect",n,s),a.setAttributeNS(null,"x",t-.5*o.size),a.setAttributeNS(null,"y",i-.5*o.size),a.setAttributeNS(null,"width",o.size),a.setAttributeNS(null,"height",o.size)),void 0!==o.style&&a.setAttributeNS(null,"style",o.style),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)}},i.prototype.flush=function(){for(;this._queue.length>0;){var t=this._queue.shift();t.fn.apply(t.context||t.fn,t.args||[])}},t.exports=i},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.camera.setArmRotation(1,.5),this.camera.setArmLength(1.7),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.axisColor="#4D4D4D",this.gridColor="#D3D3D3",this.dataColor={fill:"#7DC1FF",stroke:"#3267D2",strokeWidth:1},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.axisColor,u.strokeRect(h,r,i,s)}if(this.style===o.STYLE.DOTSIZE&&(u.strokeStyle=this.axisColor,u.fillStyle=this.dataColor.fill,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.axisColor,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.axisColor,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.axisColor,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.axisColor,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.axisColor,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.axisColor,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.axisColor,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.axisColor,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.axisColor,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.axisColor,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.axisColor,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.axisColor,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=this.frame.canvas,m=f.getContext("2d");if(m.lineJoin="round",m.lineCap="round",!(void 0===this.dataPoints||this.dataPoints.length<=0)){for(s=0;s0}else r=!0;r?(p=(t.point.z+e.point.z+i.point.z+n.point.z)/4,d=240*(1-(p-this.zMin)*this.scale.z/this.verticalRatio),u=1,this.showShadow?(c=Math.min(1+x.x/k/2,1),a=this._hsv2rgb(d,u,c),h=a):(c=1,a=this._hsv2rgb(d,u,c),h=this.axisColor)):(a="gray",h=this.axisColor),m.lineWidth=this._getStrokeWidth(t),m.fillStyle=a,m.strokeStyle=h,m.beginPath(),m.moveTo(t.screen.x,t.screen.y),m.lineTo(e.screen.x,e.screen.y),m.lineTo(n.screen.x,n.screen.y),m.lineTo(i.screen.x,i.screen.y),m.closePath(),m.fill(),m.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.dataColor.fill,m=this.dataColor.stroke):(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=this._getStrokeWidth(d),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){for(t=this.dataPoints[0],o.lineWidth=this._getStrokeWidth(t),o.lineJoin="round",o.lineCap="round",o.strokeStyle=this.dataColor.stroke,o.beginPath(),o.moveTo(t.screen.x,t.screen.y),e=1;e0?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){function i(t,e){this.x=void 0!==t?t:0,this.y=void 0!==e?e:0}t.exports=i},function(t,e){function i(t){return t?o(t):void 0}function o(t){for(var e in i.prototype)t[e]=i.prototype[e];return t}t.exports=i,i.prototype.on=i.prototype.addEventListener=function(t,e){return this._callbacks=this._callbacks||{},(this._callbacks[t]=this._callbacks[t]||[]).push(e),this},i.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},i.prototype.off=i.prototype.removeListener=i.prototype.removeAllListeners=i.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},i.prototype.listeners=function(t){return this._callbacks=this._callbacks||{},this._callbacks[t]||[]},i.prototype.hasListeners=function(t){return!!this.listeners(t).length}},function(t,e){function i(t,e,i){this.x=void 0!==t?t:0,this.y=void 0!==e?e:0,this.z=void 0!==i?i:0}i.subtract=function(t,e){var o=new i;return o.x=t.x-e.x,o.y=t.y-e.y,o.z=t.z-e.z,o},i.add=function(t,e){var o=new i;return o.x=t.x+e.x,o.y=t.y+e.y,o.z=t.z+e.z,o},i.avg=function(t,e){return new i((t.x+e.x)/2,(t.y+e.y)/2,(t.z+e.z)/2)},i.crossProduct=function(t,e){var o=new i;return o.x=t.y*e.z-t.z*e.y,o.y=t.z*e.x-t.x*e.z,o.z=t.x*e.y-t.y*e.x,o},i.prototype.length=function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)},t.exports=i},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){function i(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)}i.prototype.setRange=function(t,e,i,o){this._start=t?t:0,this._end=e?e:0,this.setStep(i,o)},i.prototype.setStep=function(t,e){void 0===t||0>=t||(void 0!==e&&(this.prettyStep=e),this.prettyStep===!0?this._step=i.calculatePrettyStep(t):this._step=t)},i.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},i.prototype.getCurrent=function(){return parseFloat(this._current.toPrecision(this.precision))},i.prototype.getStep=function(){return this._step},i.prototype.start=function(){this._current=this._start-this._start%this._step},i.prototype.next=function(){this._current+=this._step},i.prototype.end=function(){return this._current>this._end},t.exports=i},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 p=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 p.timeAxis.step.scale},getStep:function(){return p.timeAxis.step.step},toScreen:p._toScreen.bind(p),toGlobalScreen:p._toGlobalScreen.bind(p),toTime:p._toTime.bind(p),toGlobalTime:p._toGlobalTime.bind(p)}},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){p.emit("click",p.getEventProperties(t))}),this.on("doubletap",function(t){p.emit("doubleClick",p.getEventProperties(t))}),this.dom.root.oncontextmenu=function(t){p.emit("contextmenu",p.getEventProperties(t))},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._createConfigurator=function(){return new p(this,this.dom.container,g)},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){function i(t,e){this.options=null,this.props=null}i.prototype.setOptions=function(t){t&&util.extend(this.options,t)},i.prototype.redraw=function(){return!1},i.prototype.destroy=function(){},i.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=i},function(t,e){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.container=t,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.hammer.get("pan").set({threshold:5,direction:30}),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("function"==typeof t.drawPoints&&(t.drawPoints={onRender:t.drawPoints}),"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)}),"configure"in t){this.configurator||(this.configurator=this._createConfigurator()),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.min||null!==e.max){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(){throw new Error("Cannot invoke abstract method getDataRange")},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;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",r=this._orderGroups()||r;var h=e.end-e.start,d=h!=this.lastVisibleInterval||this.props.width!=this.props.lastWidth;d&&(this.stackDirty=!0),this.lastVisibleInterval=h,this.props.lastWidth=this.props.width;var l=this.stackDirty,u=this._firstGroup(),c={item:t.item,axis:t.axis},p={item:t.item,axis:t.item.vertical/2},f=0,m=t.axis+t.item.vertical;return this.groups[g].redraw(e,p,l),s.forEach(this.groups,function(t){var i=t==u?c:p,o=t.redraw(e,i,l);r=o||r,f+=t.height}),f=Math.max(f,m),this.stackDirty=!1,a.style.height=i(f),this.props.width=a.offsetWidth,this.props.height=f,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,event:t})}},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(),event:t})}}},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-o.vertical+ie.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.options.editable.updateTime||this.options.editable.updateGroup||this.editable===!0)&&this.editable!==!1,o=(this.data.className?" "+this.data.className:"")+(this.selected?" vis-selected":"")+(i?" vis-editable":" vis-readonly");t.box.className=this.baseClassName+o,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:{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.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.props,e=this.dom.foreground,i=this.dom.background,o="top"==this.options.orientation.axis?this.body.dom.top:this.body.dom.bottom,n=e.parentNode!==o;this._calculateCharSize();var s=this.options.showMinorLabels&&"none"!==this.options.orientation.axis,r=this.options.showMajorLabels&&"none"!==this.options.orientation.axis;t.minorLabelHeight=s?t.minorCharHeight:0,t.majorLabelHeight=r?t.majorCharHeight:0,t.height=t.minorLabelHeight+t.majorLabelHeight,t.width=e.offsetWidth,t.minorLineHeight=this.body.domProps.root.height-t.majorLabelHeight-("top"==this.options.orientation.axis?this.body.domProps.bottom.height:this.body.domProps.top.height),t.minorLineWidth=1,t.majorLineHeight=t.minorLineHeight+t.majorLabelHeight,t.majorLineWidth=1;var a=e.nextSibling,h=i.nextSibling;return e.parentNode&&e.parentNode.removeChild(e),i.parentNode&&i.parentNode.removeChild(i),e.style.height=this.props.height+"px",this._repaintLabels(),a?o.insertBefore(e,a):o.appendChild(e),h?this.body.dom.backgroundVertical.insertBefore(i,h):this.body.dom.backgroundVertical.appendChild(i),this._isResized()||n},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()})}),document&&document.body&&(this.onClick=function(i){n(i.target,t)||e.deactivate()},document.body.addEventListener("click",this.onClick)),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.onClick&&document.body.removeEventListener("click",this.onClick),this.hammer.destroy(),this.hammer=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?o-1:0),s=1;o>s;s++)n[s-1]=e[s];n.forEach(function(t){r.appendChild(t)}),i.domElements.push(r)}()}}},{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 d=document.createElement("input");d.className="vis-network-configuration rangeinput",d.value=a.value;var l=this;a.onchange=function(){d.value=this.value,l._update(Number(this.value),i)},a.oninput=function(){d.value=this.value};var u=this._makeLabel(i[i.length-1],i);this._makeItem(i,u,a,d)}},{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)+""}},{key:"getOptions",value:function(){for(var t={},e=0;es;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}},o.prototype._createConfigurator=function(){return new p(this,this.dom.container,g)},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),"__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&&"bar"===r.style?"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")}},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]},i.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},i.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},i.prototype.hasNext=function(){return this.current>=this.marginStart},i.prototype.next=function(){var t=this.current;this.current-=this.step,this.current===t&&(this.current=this._end)},i.prototype.previous=function(){this.current+=this.step,this.marginEnd+=this.step,this.marginRange=this.marginEnd-this.marginStart},i.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=i},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){if(null!=t){this.itemsData=t,1==this.options.sort&&this.itemsData.sort(function(t,e){return t.x-e.x});for(var e=0;et[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"]=F,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){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}return function(e,i){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),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=n(d,2),u=l[0],c=l[1],p=this._setAlignment(t,i,h,s),f=n(p,2);i=f[0],h=f[1],t.font=(e&&this.options.labelHighlightBold?"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&&this.pointToSelf===!1){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&&this.options.labelHighlightBold?"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;i0&&(this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelModule.size.height+3))}}]),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;i0){var i=5;this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelModule.size.height+i)}}},{key:"_icon",value:function(t,e,i,o){var n=Number(this.options.icon.size);void 0!==this.options.icon.code?(t.font=(o?"bold ":"")+n+"px "+this.options.icon.face,t.fillStyle=this.options.icon.color||"black",t.textAlign="center",t.textBaseline="middle",this.enableShadow(t),t.fillText(this.options.icon.code,e,i),this.disableShadow(t)):console.error("When using the icon shape, you need to define the code in the icon options object. This can be done per node or globally.")}},{key:"distanceToBorder",value:function(t,e){return this.resize(t),this._distanceToBorder(e)}}]),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;i0&&(this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelOffset))}},{key:"distanceToBorder",value:function(t,e){this.resize(t);var i=this.width/2,o=this.height/2,n=Math.sin(e)*i,s=Math.cos(e)*o;return i*o/Math.sqrt(n*n+s*s)}}]),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","labelHighlightBold","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(!(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){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}return function(e,i){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),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,o,s,r,a){var h=0;if(this.from!=this.to)h=this._getDistanceToEdge(t,e,i,o,s,r,a);else{var d=this._getCircleData(),l=n(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,o,s){t.strokeStyle=this.getColor(t,o,s),t.fillStyle=t.strokeStyle,t.lineWidth=this.getLineWidth(o,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=n(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;i=this.to.y?this.from.x<=this.to.x?(t=this.from.x+i*s,e=this.from.y-i*s):this.from.x>this.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.x<=this.to.x?(t=this.from.x+i*n,e=this.from.y-i*n):this.from.x>this.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.x,e=this.from.yMath.abs(this.from.y-this.to.y)&&(t=this.from.x=this.to.y?this.from.x<=this.to.x?(t=this.from.x+i*s,e=this.from.y-i*s,t=this.to.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.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.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||this.initialStabilizationEmitted===!1)&&(this.initialStabilizationEmitted=!0,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];return"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),0===this.physicsBody.physicsNodeIndices.length?void(this.ready=!0):(this.body.emitter.emit("_resizeNodes"),this.stopSimulation(),this.stabilized=!1,this.body.emitter.emit("_blockRedraw"),this.targetIterations=e,this.options.stabilization.onlyDynamicEdges===!0&&this._freezeNodes(),this.stabilizationIterations=0,void 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+=this.seededRandom(),e.y+=this.seededRandom()):(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"]=n,t.exports=e["default"]},function(t,e){function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var o=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"]=n,t.exports=e["default"]},function(t,e){function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var o=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"]=n,t.exports=e["default"]},function(t,e){function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var o=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,e){var i=void 0===arguments[2]?!0:arguments[2];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 o=this.body.nodes[t],n=o.containedNodes,s=o.containedEdges;if(void 0!==e&&void 0!==e.releaseFunction&&"function"==typeof e.releaseFunction){var r={},a={x:o.x,y:o.y};for(var d in n)if(n.hasOwnProperty(d)){var l=this.body.nodes[d];r[d]={x:l.x,y:l.y}}var u=e.releaseFunction(a,r);for(var d in n)if(n.hasOwnProperty(d)){var l=this.body.nodes[d];void 0!==u[d]&&(l.x=u[d].x||o.x,l.y=u[d].y||o.y)}}else for(var d in n)if(n.hasOwnProperty(d)){var l=this.body.nodes[d];l=n[d],l.x=o.x,l.y=o.y}for(var d in n)if(n.hasOwnProperty(d)){var l=this.body.nodes[d];l.vx=o.vx,l.vy=o.vy,l.options.hidden=!1,l.togglePhysics(!0),delete this.clusteredNodes[d]}for(var c in s)if(s.hasOwnProperty(c)){var p=s[c];if(void 0===this.body.nodes[p.fromId]||void 0===this.body.nodes[p.toId]||p.toId==t||p.fromId==t)p.edgeType.cleanup(),p.disconnect(),delete this.body.edges[c];else if(void 0!==this.clusteredNodes[p.fromId]||void 0!==this.clusteredNodes[p.toId]){var f=void 0,m=void 0,v=this.clusteredNodes[p.fromId]||this.clusteredNodes[p.toId],g=v.clusterId,y=this.body.nodes[g];if(y.containedEdges[c]=p,void 0!==this.clusteredNodes[p.fromId]?(f=g,m=p.toId):(f=p.fromId,m=g),this.body.nodes[f].options.hidden!==!0&&this.body.nodes[m].options.hidden!==!0){var b=this._cloneOptions(p,"edge"),w="clusterEdge:"+h.randomUUID();h.deepExtend(b,y.clusterEdgeProperties),h.deepExtend(b,{from:f,to:m,hidden:!1,physics:!0,id:w});var _=this.body.functions.createEdge(b);this.body.edges[w]=_,this.body.edges[w].connect()}}else p.options.hidden=!1,p.togglePhysics(!0)}for(var x=[],k=0;ko;)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,null===n&&(n=Function.prototype);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(){var t=this;this.redrawRequested!==!0&&this.renderingActive===!1&&this.allowRedraw===!0&&(this.redrawRequested=!0,this.requiresTimeout===!0?window.setTimeout(function(){t._redraw(!1)},0):window.requestAnimationFrame(function(){t._redraw(!1)}))}},{key:"_redraw",value:function(){var t=void 0===arguments[0]?!1:arguments[0];if(this.allowRedraw===!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.canvas.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,this.body.emitter.emit("zoom",{direction:"+",scale:this.body.view.scale})}},{key:"_zoomOut",value:function(){this.body.view.scale/=1+this.options.keyboard.speed.zoom,this.body.emitter.emit("zoom",{direction:"-",scale:this.body.view.scale})}},{key:"configureKeyboardBindings",value:function(){var t=this;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",function(){t.bindToRedraw("_moveUp")},"keydown"),this.keycharm.bind("down",function(){t.bindToRedraw("_moveDown")},"keydown"),this.keycharm.bind("left",function(){t.bindToRedraw("_moveLeft")},"keydown"),this.keycharm.bind("right",function(){t.bindToRedraw("_moveRight")},"keydown"),this.keycharm.bind("=",function(){t.bindToRedraw("_zoomIn")},"keydown"),this.keycharm.bind("num+",function(){t.bindToRedraw("_zoomIn")},"keydown"),this.keycharm.bind("num-",function(){t.bindToRedraw("_zoomOut")},"keydown"),this.keycharm.bind("-",function(){t.bindToRedraw("_zoomOut")},"keydown"),this.keycharm.bind("[",function(){t.bindToRedraw("_zoomOut")},"keydown"),this.keycharm.bind("]",function(){t.bindToRedraw("_zoomIn")},"keydown"),this.keycharm.bind("pageup",function(){t.bindToRedraw("_zoomIn")},"keydown"),this.keycharm.bind("pagedown",function(){t.bindToRedraw("_zoomOut")},"keydown"),this.keycharm.bind("up",function(){t.unbindFromRedraw("_moveUp")},"keyup"),this.keycharm.bind("down",function(){t.unbindFromRedraw("_moveDown")},"keyup"),this.keycharm.bind("left",function(){t.unbindFromRedraw("_moveLeft")},"keyup"),this.keycharm.bind("right",function(){t.unbindFromRedraw("_moveRight")},"keyup"),this.keycharm.bind("=",function(){t.unbindFromRedraw("_zoomIn")},"keyup"),this.keycharm.bind("num+",function(){t.unbindFromRedraw("_zoomIn")},"keyup"),this.keycharm.bind("num-",function(){t.unbindFromRedraw("_zoomOut")},"keyup"),this.keycharm.bind("-",function(){t.unbindFromRedraw("_zoomOut")},"keyup"),this.keycharm.bind("[",function(){t.unbindFromRedraw("_zoomOut")},"keyup"),this.keycharm.bind("]",function(){t.unbindFromRedraw("_zoomIn")},"keyup"),this.keycharm.bind("pageup",function(){t.unbindFromRedraw("_zoomIn")},"keyup"),this.keycharm.bind("pagedown",function(){t.unbindFromRedraw("_zoomOut")},"keyup")))}}]),t}();e["default"]=h,t.exports=e["default"]},function(t,e){function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var o=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.getDataSet().remove(e.edges),t.body.data.nodes.getDataSet().remove(e.nodes),t.body.emitter.emit("startSimulation"),t.showManipulatorToolbar()):(t.body.emitter.emit("startSimulation"),t.showManipulatorToolbar())})}else this.body.data.edges.getDataSet().remove(i),this.body.data.nodes.getDataSet().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.getDataSet().add(t),e.showManipulatorToolbar())})}else this.body.data.nodes.getDataSet().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.getDataSet().add(t),i.selectionHandler.unselectAll(),i.showManipulatorToolbar())})}else this.body.data.edges.getDataSet().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.getDataSet().update(t),i.selectionHandler.unselectAll(),i.showManipulatorToolbar())})}else this.body.data.edges.getDataSet().update(o),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}}]),t}();e["default"]=h,t.exports=e["default"]},function(t,e){Object.defineProperty(e,"__esModule",{value:!0});var i="string",o="boolean",n="number",s="array",r="object",a="dom",h="any",d={configure:{enabled:{"boolean":o},filter:{"boolean":o,string:i,array:s,"function":"function"},container:{dom:a},showButton:{"boolean":o},__type__:{object:r,"boolean":o,string:i,array:s,"function":"function"}},edges:{arrows:{to:{enabled:{"boolean":o},scaleFactor:{number:n},__type__:{object:r,"boolean":o}},middle:{enabled:{"boolean":o},scaleFactor:{number:n},__type__:{object:r,"boolean":o}},from:{enabled:{"boolean":o},scaleFactor:{number:n},__type__:{object:r,"boolean":o}},__type__:{string:["from","to","middle"],object:r}},color:{color:{string:i},highlight:{string:i},hover:{string:i},inherit:{string:["from","to","both"],"boolean":o},opacity:{number:n},__type__:{object:r,string:i}},dashes:{"boolean":o,array:s},font:{color:{string:i},size:{number:n},face:{string:i},background:{string:i},strokeWidth:{number:n},strokeColor:{string:i},align:{string:["horizontal","top","middle","bottom"]},__type__:{object:r,string:i}},hidden:{"boolean":o},hoverWidth:{"function":"function",number:n},label:{string:i,undefined:"undefined"},labelHighlightBold:{"boolean":o},length:{number:n,undefined:"undefined"},physics:{"boolean":o},scaling:{min:{number:n},max:{number:n},label:{enabled:{"boolean":o},min:{number:n},max:{number:n},maxVisible:{number:n},drawThreshold:{number:n},__type__:{object:r,"boolean":o}},customScalingFunction:{"function":"function"},__type__:{object:r}},selectionWidth:{"function":"function",number:n},selfReferenceSize:{number:n},shadow:{enabled:{"boolean":o},size:{number:n},x:{number:n},y:{number:n},__type__:{object:r,"boolean":o}},smooth:{enabled:{"boolean":o},type:{string:["dynamic","continuous","discrete","diagonalCross","straightCross","horizontal","vertical","curvedCW","curvedCCW"]},roundness:{number:n},__type__:{object:r,"boolean":o}},title:{string:i,undefined:"undefined"},width:{number:n},value:{number:n,undefined:"undefined"},__type__:{object:r}},groups:{useDefaultGroups:{"boolean":o},__any__:"get from nodes, will be overwritten below",__type__:{object:r}},interaction:{dragNodes:{"boolean":o},dragView:{"boolean":o},hideEdgesOnDrag:{"boolean":o},hideNodesOnDrag:{"boolean":o},hover:{"boolean":o},keyboard:{enabled:{"boolean":o},speed:{x:{number:n},y:{number:n},zoom:{number:n},__type__:{object:r}},bindToWindow:{"boolean":o},__type__:{object:r,"boolean":o}},multiselect:{"boolean":o},navigationButtons:{"boolean":o},selectable:{"boolean":o},selectConnectedEdges:{"boolean":o},hoverConnectedEdges:{"boolean":o},tooltipDelay:{number:n},zoomView:{"boolean":o},__type__:{object:r}},layout:{randomSeed:{undefined:"undefined",number:n},hierarchical:{enabled:{"boolean":o},levelSeparation:{number:n},direction:{string:["UD","DU","LR","RL"]},sortMethod:{string:["hubsize","directed"]},__type__:{object:r,"boolean":o}},__type__:{object:r}},manipulation:{enabled:{"boolean":o},initiallyActive:{"boolean":o},addNode:{"boolean":o,"function":"function"},addEdge:{"boolean":o,"function":"function"},editNode:{"function":"function"},editEdge:{"boolean":o,"function":"function"},deleteNode:{"boolean":o,"function":"function"},deleteEdge:{"boolean":o,"function":"function"},controlNodeStyle:"get from nodes, will be overwritten below",__type__:{object:r,"boolean":o}},nodes:{borderWidth:{number:n},borderWidthSelected:{number:n,undefined:"undefined"},brokenImage:{string:i,undefined:"undefined"},color:{border:{string:i},background:{string:i},highlight:{border:{string:i},background:{string:i},__type__:{object:r,string:i}},hover:{border:{string:i},background:{string:i},__type__:{object:r,string:i}},__type__:{object:r,string:i}},fixed:{x:{"boolean":o},y:{"boolean":o},__type__:{object:r,"boolean":o}},font:{color:{string:i},size:{number:n},face:{string:i},background:{string:i},strokeWidth:{number:n},strokeColor:{string:i},__type__:{object:r,string:i}},group:{string:i,number:n,undefined:"undefined"},hidden:{"boolean":o},icon:{face:{string:i},code:{string:i},size:{number:n},color:{string:i},__type__:{object:r}},id:{string:i,number:n},image:{string:i,undefined:"undefined"},label:{string:i,undefined:"undefined"},labelHighlightBold:{"boolean":o},level:{number:n,undefined:"undefined"},mass:{number:n},physics:{"boolean":o},scaling:{min:{number:n},max:{number:n},label:{enabled:{"boolean":o},min:{number:n},max:{number:n},maxVisible:{number:n},drawThreshold:{number:n},__type__:{object:r,"boolean":o}},customScalingFunction:{"function":"function"},__type__:{object:r}},shadow:{enabled:{"boolean":o},size:{number:n},x:{number:n},y:{number:n},__type__:{object:r,"boolean":o}},shape:{string:["ellipse","circle","database","box","text","image","circularImage","diamond","dot","star","triangle","triangleDown","square","icon"]},size:{number:n},title:{string:i,undefined:"undefined"},value:{number:n,undefined:"undefined"},x:{number:n},y:{number:n},__type__:{object:r}},physics:{enabled:{"boolean":o},barnesHut:{gravitationalConstant:{number:n},centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},damping:{number:n},avoidOverlap:{number:n},__type__:{object:r}},forceAtlas2Based:{gravitationalConstant:{number:n},centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},damping:{number:n},avoidOverlap:{number:n},__type__:{object:r}},repulsion:{centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},nodeDistance:{number:n},damping:{number:n},__type__:{object:r}},hierarchicalRepulsion:{centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},nodeDistance:{number:n},damping:{number:n},__type__:{object:r}},maxVelocity:{number:n},minVelocity:{number:n},solver:{string:["barnesHut","repulsion","hierarchicalRepulsion","forceAtlas2Based"]},stabilization:{enabled:{"boolean":o},iterations:{number:n},updateInterval:{number:n},onlyDynamicEdges:{"boolean":o},fit:{"boolean":o},__type__:{object:r,"boolean":o}},timestep:{number:n},__type__:{object:r,"boolean":o}},autoResize:{"boolean":o},clickToUse:{"boolean":o},locale:{string:i},locales:{__any__:{any:h},__type__:{object:r}},height:{string:i},width:{string:i},__type__:{object:r}};d.groups.__any__=d.nodes,d.manipulation.controlNodeStyle=d.nodes;var l={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,labelHighlightBold:!0,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],labelHighlightBold:!0,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:{enabled:!0,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=d,e.configureOptions=l},function(t,e){"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){function i(t){return P=t,p()}function o(){I=0,N=P.charAt(0)}function n(){I++,N=P.charAt(I)}function s(){return P.charAt(I+1)}function r(t){return L.test(t)}function a(t,e){if(t||(t={}),e)for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i]);return t}function h(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 d(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=a(n.attr,t.node))),i=s.length-1;i>=0;i--){var h=s[i];h.nodes||(h.nodes=[]),-1===h.nodes.indexOf(n)&&h.nodes.push(n)}e.attr&&(n.attr=a(n.attr,e.attr))}function l(t,e){if(t.edges||(t.edges=[]),t.edges.push(e),t.edge){var i=a({},t.edge);e.attr=a(i,e.attr)}}function u(t,e,i,o,n){var s={from:e,to:i,type:o};return t.edge&&(s.attr=a({},t.edge)),s.attr=a(s.attr||{},n),s}function c(){for(A=E.NULL,z="";" "===N||" "===N||"\n"===N||"\r"===N;)n();do{var t=!1;if("#"===N){for(var e=I-1;" "===P.charAt(e)||" "===P.charAt(e);)e--;if("\n"===P.charAt(e)||""===P.charAt(e)){for(;""!=N&&"\n"!=N;)n();t=!0}}if("/"===N&&"/"===s()){for(;""!=N&&"\n"!=N;)n();t=!0}if("/"===N&&"*"===s()){for(;""!=N;){if("*"===N&&"/"===s()){n(),n();break}n()}t=!0}for(;" "===N||" "===N||"\n"===N||"\r"===N;)n()}while(t);if(""===N)return void(A=E.DELIMITER);var i=N+s();if(S[i])return A=E.DELIMITER,z=i,n(),void n();if(S[N])return A=E.DELIMITER,z=N,void n();if(r(N)||"-"===N){for(z+=N,n();r(N);)z+=N,n();return"false"===z?z=!1:"true"===z?z=!0:isNaN(Number(z))||(z=Number(z)),void(A=E.IDENTIFIER)}if('"'===N){for(n();""!=N&&('"'!=N||'"'===N&&'"'===s());)z+=N,'"'===N&&n(),n();if('"'!=N)throw _('End of string " expected');return n(),void(A=E.IDENTIFIER)}for(A=E.UNKNOWN;""!=N;)z+=N,n();throw new SyntaxError('Syntax error in part "'+x(z,30)+'"')}function p(){var t={};if(o(),c(),"strict"===z&&(t.strict=!0,c()),("graph"===z||"digraph"===z)&&(t.type=z,c()),A===E.IDENTIFIER&&(t.id=z,c()),"{"!=z)throw _("Angle bracket { expected");if(c(),f(t),"}"!=z)throw _("Angle bracket } expected");if(c(),""!==z)throw _("End of file expected");return c(),delete t.node,delete t.edge,delete t.graph,t}function f(t){for(;""!==z&&"}"!=z;)m(t),";"===z&&c()}function m(t){var e=v(t);if(e)return void b(t,e);var i=g(t);if(!i){if(A!=E.IDENTIFIER)throw _("Identifier expected");var o=z;if(c(),"="===z){if(c(),A!=E.IDENTIFIER)throw _("Identifier expected");t[o]=z,c()}else y(t,o)}}function v(t){var e=null;if("subgraph"===z&&(e={},e.type="subgraph",c(),A===E.IDENTIFIER&&(e.id=z,c())),"{"===z){if(c(),e||(e={}),e.parent=t,e.node=t.node,e.edge=t.edge,e.graph=t.graph,f(e),"}"!=z)throw _("Angle bracket } expected");c(),delete e.node,delete e.edge,delete e.graph,delete e.parent,t.subgraphs||(t.subgraphs=[]),t.subgraphs.push(e)}return e}function g(t){return"node"===z?(c(),t.node=w(),"node"):"edge"===z?(c(), -t.edge=w(),"edge"):"graph"===z?(c(),t.graph=w(),"graph"):null}function y(t,e){var i={id:e},o=w();o&&(i.attr=o),d(t,i),b(t,e)}function b(t,e){for(;"->"===z||"--"===z;){var i,o=z;c();var n=v(t);if(n)i=n;else{if(A!=E.IDENTIFIER)throw _("Identifier or subgraph expected");i=z,d(t,{id:i}),c()}var s=w(),r=u(t,e,i,o,s);l(t,r),e=i}}function w(){for(var t=null;"["===z;){for(c(),t={};""!==z&&"]"!=z;){if(A!=E.IDENTIFIER)throw _("Attribute name expected");var e=z;if(c(),"="!=z)throw _("Equal sign = expected");if(c(),A!=E.IDENTIFIER)throw _("Attribute value expected");var i=z;h(t,e,i),c(),","==z&&c()}if("]"!=z)throw _("Bracket ] expected");c()}return t}function _(t){return new SyntaxError(t+', got "'+x(z,30)+'" (char '+I+")")}function x(t,e){return t.length<=e?t:t.substr(0,27)+"..."}function k(t,e,i){Array.isArray(t)?t.forEach(function(t){Array.isArray(e)?e.forEach(function(e){i(t,e)}):i(t,e)}):Array.isArray(e)?e.forEach(function(e){i(t,e)}):i(t,e)}function M(t,e,i){for(var o=e.split("."),n=o.pop(),s=t,r=0;r":!0,"--":!0},P="",I=0,N="",z="",A=E.NULL,L=/[a-zA-Z_0-9.:#]/;e.parseDOT=i,e.DOTToGraph=D},function(t,e){function i(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;a0&&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]},i.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},i.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},i.prototype.hasNext=function(){return this.current>=this.marginStart},i.prototype.next=function(){var t=this.current;this.current-=this.step,this.current===t&&(this.current=this._end)},i.prototype.previous=function(){this.current+=this.step,this.marginEnd+=this.step,this.marginRange=this.marginEnd-this.marginStart},i.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=i},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){if(null!=t){this.itemsData=t,1==this.options.sort&&this.itemsData.sort(function(t,e){return t.x-e.x});for(var e=0;et[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"]=F,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){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}return function(e,i){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),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=n(d,2),u=l[0],c=l[1],p=this._setAlignment(t,i,h,s),f=n(p,2);i=f[0],h=f[1],t.font=(e&&this.options.labelHighlightBold?"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&&this.pointToSelf===!1){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&&this.options.labelHighlightBold?"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.enableBorderDashes(t),this.enableShadow(t),t.fill(),this.disableBorderDashes(t),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;i0&&(this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelModule.size.height+3))}}]),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;i0){var i=5;this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelModule.size.height+i)}}},{key:"_icon",value:function(t,e,i,o){var n=Number(this.options.icon.size);void 0!==this.options.icon.code?(t.font=(o?"bold ":"")+n+"px "+this.options.icon.face,t.fillStyle=this.options.icon.color||"black",t.textAlign="center",t.textBaseline="middle",this.enableShadow(t),t.fillText(this.options.icon.code,e,i),this.disableShadow(t)):console.error("When using the icon shape, you need to define the code in the icon options object. This can be done per node or globally.")}},{key:"distanceToBorder",value:function(t,e){return this.resize(t),this._distanceToBorder(e)}}]),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;i0&&(this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelOffset))}},{key:"distanceToBorder",value:function(t,e){this.resize(t);var i=this.width/2,o=this.height/2,n=Math.sin(e)*i,s=Math.cos(e)*o;return i*o/Math.sqrt(n*n+s*s)}}]),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","labelHighlightBold","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(!(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){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}return function(e,i){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),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,o,s,r,a){var h=0;if(this.from!=this.to)h=this._getDistanceToEdge(t,e,i,o,s,r,a);else{var d=this._getCircleData(),l=n(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,o,s){t.strokeStyle=this.getColor(t,o,s),t.fillStyle=t.strokeStyle,t.lineWidth=this.getLineWidth(o,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=n(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;i=this.to.y?this.from.x<=this.to.x?(t=this.from.x+i*s,e=this.from.y-i*s):this.from.x>this.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.x<=this.to.x?(t=this.from.x+i*n,e=this.from.y-i*n):this.from.x>this.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.x,e=this.from.yMath.abs(this.from.y-this.to.y)&&(t=this.from.x=this.to.y?this.from.x<=this.to.x?(t=this.from.x+i*s,e=this.from.y-i*s,t=this.to.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.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.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||this.initialStabilizationEmitted===!1)&&(this.initialStabilizationEmitted=!0,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];return"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),0===this.physicsBody.physicsNodeIndices.length?void(this.ready=!0):(this.body.emitter.emit("_resizeNodes"),this.stopSimulation(),this.stabilized=!1,this.body.emitter.emit("_blockRedraw"),this.targetIterations=e,this.options.stabilization.onlyDynamicEdges===!0&&this._freezeNodes(),this.stabilizationIterations=0,void 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+=this.seededRandom(),e.y+=this.seededRandom()):(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"]=n,t.exports=e["default"]},function(t,e){function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var o=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"]=n,t.exports=e["default"]},function(t,e){function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var o=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"]=n,t.exports=e["default"]},function(t,e){function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var o=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,e){var i=void 0===arguments[2]?!0:arguments[2];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 o=this.body.nodes[t],n=o.containedNodes,s=o.containedEdges;if(void 0!==e&&void 0!==e.releaseFunction&&"function"==typeof e.releaseFunction){var r={},a={x:o.x,y:o.y};for(var d in n)if(n.hasOwnProperty(d)){var l=this.body.nodes[d];r[d]={x:l.x,y:l.y}}var u=e.releaseFunction(a,r);for(var d in n)if(n.hasOwnProperty(d)){var l=this.body.nodes[d];void 0!==u[d]&&(l.x=u[d].x||o.x,l.y=u[d].y||o.y)}}else for(var d in n)if(n.hasOwnProperty(d)){var l=this.body.nodes[d];l=n[d],l.x=o.x,l.y=o.y}for(var d in n)if(n.hasOwnProperty(d)){var l=this.body.nodes[d];l.vx=o.vx,l.vy=o.vy,l.options.hidden=!1,l.togglePhysics(!0),delete this.clusteredNodes[d]}for(var c in s)if(s.hasOwnProperty(c)){var p=s[c];if(void 0===this.body.nodes[p.fromId]||void 0===this.body.nodes[p.toId]||p.toId==t||p.fromId==t)p.edgeType.cleanup(),p.disconnect(),delete this.body.edges[c];else if(void 0!==this.clusteredNodes[p.fromId]||void 0!==this.clusteredNodes[p.toId]){var f=void 0,m=void 0,v=this.clusteredNodes[p.fromId]||this.clusteredNodes[p.toId],g=v.clusterId,y=this.body.nodes[g];if(y.containedEdges[c]=p,void 0!==this.clusteredNodes[p.fromId]?(f=g,m=p.toId):(f=p.fromId,m=g),this.body.nodes[f].options.hidden!==!0&&this.body.nodes[m].options.hidden!==!0){var b=this._cloneOptions(p,"edge"),w="clusterEdge:"+h.randomUUID();h.deepExtend(b,y.clusterEdgeProperties),h.deepExtend(b,{from:f,to:m,hidden:!1,physics:!0,id:w});var _=this.body.functions.createEdge(b);this.body.edges[w]=_,this.body.edges[w].connect()}}else p.options.hidden=!1,p.togglePhysics(!0)}for(var x=[],k=0;ko;)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,null===n&&(n=Function.prototype);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(){var t=this;this.redrawRequested!==!0&&this.renderingActive===!1&&this.allowRedraw===!0&&(this.redrawRequested=!0,this.requiresTimeout===!0?window.setTimeout(function(){t._redraw(!1)},0):window.requestAnimationFrame(function(){t._redraw(!1)}))}},{key:"_redraw",value:function(){var t=void 0===arguments[0]?!1:arguments[0];if(this.allowRedraw===!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,i.selected));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.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.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,this.body.emitter.emit("zoom",{direction:"+",scale:this.body.view.scale})}},{key:"_zoomOut",value:function(){this.body.view.scale/=1+this.options.keyboard.speed.zoom,this.body.emitter.emit("zoom",{direction:"-",scale:this.body.view.scale})}},{key:"configureKeyboardBindings",value:function(){var t=this;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",function(){t.bindToRedraw("_moveUp")},"keydown"),this.keycharm.bind("down",function(){t.bindToRedraw("_moveDown")},"keydown"),this.keycharm.bind("left",function(){t.bindToRedraw("_moveLeft")},"keydown"),this.keycharm.bind("right",function(){t.bindToRedraw("_moveRight")},"keydown"),this.keycharm.bind("=",function(){t.bindToRedraw("_zoomIn")},"keydown"),this.keycharm.bind("num+",function(){t.bindToRedraw("_zoomIn")},"keydown"),this.keycharm.bind("num-",function(){t.bindToRedraw("_zoomOut")},"keydown"),this.keycharm.bind("-",function(){t.bindToRedraw("_zoomOut")},"keydown"),this.keycharm.bind("[",function(){t.bindToRedraw("_zoomOut")},"keydown"),this.keycharm.bind("]",function(){t.bindToRedraw("_zoomIn")},"keydown"),this.keycharm.bind("pageup",function(){t.bindToRedraw("_zoomIn")},"keydown"),this.keycharm.bind("pagedown",function(){t.bindToRedraw("_zoomOut")},"keydown"),this.keycharm.bind("up",function(){t.unbindFromRedraw("_moveUp")},"keyup"),this.keycharm.bind("down",function(){t.unbindFromRedraw("_moveDown")},"keyup"),this.keycharm.bind("left",function(){t.unbindFromRedraw("_moveLeft")},"keyup"),this.keycharm.bind("right",function(){t.unbindFromRedraw("_moveRight")},"keyup"),this.keycharm.bind("=",function(){t.unbindFromRedraw("_zoomIn")},"keyup"),this.keycharm.bind("num+",function(){t.unbindFromRedraw("_zoomIn")},"keyup"),this.keycharm.bind("num-",function(){t.unbindFromRedraw("_zoomOut")},"keyup"),this.keycharm.bind("-",function(){t.unbindFromRedraw("_zoomOut")},"keyup"),this.keycharm.bind("[",function(){t.unbindFromRedraw("_zoomOut")},"keyup"),this.keycharm.bind("]",function(){t.unbindFromRedraw("_zoomIn")},"keyup"),this.keycharm.bind("pageup",function(){t.unbindFromRedraw("_zoomIn")},"keyup"),this.keycharm.bind("pagedown",function(){t.unbindFromRedraw("_zoomOut")},"keyup")))}}]),t}();e["default"]=h,t.exports=e["default"]},function(t,e){function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var o=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.getDataSet().remove(e.edges),t.body.data.nodes.getDataSet().remove(e.nodes),t.body.emitter.emit("startSimulation"),t.showManipulatorToolbar()):(t.body.emitter.emit("startSimulation"),t.showManipulatorToolbar())})}else this.body.data.edges.getDataSet().remove(i),this.body.data.nodes.getDataSet().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.getDataSet().add(t),e.showManipulatorToolbar())})}else this.body.data.nodes.getDataSet().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.getDataSet().add(t),i.selectionHandler.unselectAll(),i.showManipulatorToolbar())})}else this.body.data.edges.getDataSet().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.getDataSet().update(t),i.selectionHandler.unselectAll(),i.showManipulatorToolbar())})}else this.body.data.edges.getDataSet().update(o),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}}]),t}();e["default"]=h,t.exports=e["default"]},function(t,e){Object.defineProperty(e,"__esModule",{value:!0});var i="string",o="boolean",n="number",s="array",r="object",a="dom",h="any",d={configure:{enabled:{"boolean":o},filter:{"boolean":o,string:i,array:s,"function":"function"},container:{dom:a},showButton:{"boolean":o},__type__:{object:r,"boolean":o,string:i,array:s,"function":"function"}},edges:{arrows:{to:{enabled:{"boolean":o},scaleFactor:{number:n},__type__:{object:r,"boolean":o}},middle:{enabled:{"boolean":o},scaleFactor:{number:n},__type__:{object:r,"boolean":o}},from:{enabled:{"boolean":o},scaleFactor:{number:n},__type__:{object:r,"boolean":o}},__type__:{string:["from","to","middle"],object:r}},color:{color:{string:i},highlight:{string:i},hover:{string:i},inherit:{string:["from","to","both"],"boolean":o},opacity:{number:n},__type__:{object:r,string:i}},dashes:{"boolean":o,array:s},font:{color:{string:i},size:{number:n},face:{string:i},background:{string:i},strokeWidth:{number:n},strokeColor:{string:i},align:{string:["horizontal","top","middle","bottom"]},__type__:{object:r,string:i}},hidden:{"boolean":o},hoverWidth:{"function":"function",number:n},label:{string:i,undefined:"undefined"},labelHighlightBold:{"boolean":o},length:{number:n,undefined:"undefined"},physics:{"boolean":o},scaling:{min:{number:n},max:{number:n},label:{enabled:{"boolean":o},min:{number:n},max:{number:n},maxVisible:{number:n},drawThreshold:{number:n},__type__:{object:r,"boolean":o}},customScalingFunction:{"function":"function"},__type__:{object:r}},selectionWidth:{"function":"function",number:n},selfReferenceSize:{number:n},shadow:{enabled:{"boolean":o},size:{number:n},x:{number:n},y:{number:n},__type__:{object:r,"boolean":o}},smooth:{enabled:{"boolean":o},type:{string:["dynamic","continuous","discrete","diagonalCross","straightCross","horizontal","vertical","curvedCW","curvedCCW"]},roundness:{number:n},__type__:{object:r,"boolean":o}},title:{string:i,undefined:"undefined"},width:{number:n},value:{number:n,undefined:"undefined"},__type__:{object:r}},groups:{useDefaultGroups:{"boolean":o},__any__:"get from nodes, will be overwritten below",__type__:{object:r}},interaction:{dragNodes:{"boolean":o},dragView:{"boolean":o},hideEdgesOnDrag:{"boolean":o},hideNodesOnDrag:{"boolean":o},hover:{"boolean":o},keyboard:{enabled:{"boolean":o},speed:{x:{number:n},y:{number:n},zoom:{number:n},__type__:{object:r}},bindToWindow:{"boolean":o},__type__:{object:r,"boolean":o}},multiselect:{"boolean":o},navigationButtons:{"boolean":o},selectable:{"boolean":o},selectConnectedEdges:{"boolean":o},hoverConnectedEdges:{"boolean":o},tooltipDelay:{number:n},zoomView:{"boolean":o},__type__:{object:r}},layout:{randomSeed:{undefined:"undefined",number:n},hierarchical:{enabled:{"boolean":o},levelSeparation:{number:n},direction:{string:["UD","DU","LR","RL"]},sortMethod:{string:["hubsize","directed"]},__type__:{object:r,"boolean":o}},__type__:{object:r}},manipulation:{enabled:{"boolean":o},initiallyActive:{"boolean":o},addNode:{"boolean":o,"function":"function"},addEdge:{"boolean":o,"function":"function"},editNode:{"function":"function"},editEdge:{"boolean":o,"function":"function"},deleteNode:{"boolean":o,"function":"function"},deleteEdge:{"boolean":o,"function":"function"},controlNodeStyle:"get from nodes, will be overwritten below",__type__:{object:r,"boolean":o}},nodes:{borderWidth:{number:n},borderWidthSelected:{number:n,undefined:"undefined"},brokenImage:{string:i,undefined:"undefined"},color:{border:{string:i},background:{string:i},highlight:{border:{string:i},background:{string:i},__type__:{object:r,string:i}},hover:{border:{string:i},background:{string:i},__type__:{object:r,string:i}},__type__:{object:r,string:i}},fixed:{x:{"boolean":o},y:{"boolean":o},__type__:{object:r,"boolean":o}},font:{color:{string:i},size:{number:n},face:{string:i},background:{string:i},strokeWidth:{number:n},strokeColor:{string:i},__type__:{object:r,string:i}},group:{string:i,number:n,undefined:"undefined"},hidden:{"boolean":o},icon:{face:{string:i},code:{string:i},size:{number:n},color:{string:i},__type__:{object:r}},id:{string:i,number:n},image:{string:i,undefined:"undefined"},label:{string:i,undefined:"undefined"},labelHighlightBold:{"boolean":o},level:{number:n,undefined:"undefined"},mass:{number:n},physics:{"boolean":o},scaling:{min:{number:n},max:{number:n},label:{enabled:{"boolean":o},min:{number:n},max:{number:n},maxVisible:{number:n},drawThreshold:{number:n},__type__:{object:r,"boolean":o}},customScalingFunction:{"function":"function"},__type__:{object:r}},shadow:{enabled:{"boolean":o},size:{number:n},x:{number:n},y:{number:n},__type__:{object:r,"boolean":o}},shape:{string:["ellipse","circle","database","box","text","image","circularImage","diamond","dot","star","triangle","triangleDown","square","icon"]},shapeProperties:{borderDashes:{"boolean":o,array:s},__type__:{object:r}},size:{number:n},title:{string:i,undefined:"undefined"},value:{number:n,undefined:"undefined"},x:{number:n},y:{number:n},__type__:{object:r}},physics:{enabled:{"boolean":o},barnesHut:{gravitationalConstant:{number:n},centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},damping:{number:n},avoidOverlap:{number:n},__type__:{object:r}},forceAtlas2Based:{gravitationalConstant:{number:n},centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},damping:{number:n},avoidOverlap:{number:n},__type__:{object:r}},repulsion:{centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},nodeDistance:{number:n},damping:{number:n},__type__:{object:r}},hierarchicalRepulsion:{centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},nodeDistance:{number:n},damping:{number:n},__type__:{object:r}},maxVelocity:{number:n},minVelocity:{number:n},solver:{string:["barnesHut","repulsion","hierarchicalRepulsion","forceAtlas2Based"]},stabilization:{enabled:{"boolean":o},iterations:{number:n},updateInterval:{number:n},onlyDynamicEdges:{"boolean":o},fit:{"boolean":o},__type__:{object:r,"boolean":o}},timestep:{number:n},__type__:{object:r,"boolean":o}},autoResize:{"boolean":o},clickToUse:{"boolean":o},locale:{string:i},locales:{__any__:{any:h},__type__:{object:r}},height:{string:i},width:{string:i},__type__:{object:r}};d.groups.__any__=d.nodes,d.manipulation.controlNodeStyle=d.nodes;var l={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,labelHighlightBold:!0,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"],shapeProperties:{borderDashes:!1},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],labelHighlightBold:!0,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:{enabled:!0,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=d,e.configureOptions=l},function(t,e){"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){function i(t){return P=t,p()}function o(){I=0,N=P.charAt(0)}function n(){I++,N=P.charAt(I)}function s(){return P.charAt(I+1)}function r(t){return A.test(t)}function a(t,e){if(t||(t={}),e)for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i]);return t}function h(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 d(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=a(n.attr,t.node))),i=s.length-1;i>=0;i--){var h=s[i];h.nodes||(h.nodes=[]),-1===h.nodes.indexOf(n)&&h.nodes.push(n)}e.attr&&(n.attr=a(n.attr,e.attr))}function l(t,e){if(t.edges||(t.edges=[]),t.edges.push(e),t.edge){var i=a({},t.edge);e.attr=a(i,e.attr)}}function u(t,e,i,o,n){var s={from:e,to:i,type:o};return t.edge&&(s.attr=a({},t.edge)),s.attr=a(s.attr||{},n),s}function c(){for(L=E.NULL,z="";" "===N||" "===N||"\n"===N||"\r"===N;)n();do{var t=!1;if("#"===N){for(var e=I-1;" "===P.charAt(e)||" "===P.charAt(e);)e--;if("\n"===P.charAt(e)||""===P.charAt(e)){for(;""!=N&&"\n"!=N;)n();t=!0}}if("/"===N&&"/"===s()){for(;""!=N&&"\n"!=N;)n();t=!0}if("/"===N&&"*"===s()){for(;""!=N;){if("*"===N&&"/"===s()){n(),n();break}n()}t=!0}for(;" "===N||" "===N||"\n"===N||"\r"===N;)n()}while(t);if(""===N)return void(L=E.DELIMITER);var i=N+s();if(S[i])return L=E.DELIMITER,z=i,n(),void n();if(S[N])return L=E.DELIMITER,z=N,void n();if(r(N)||"-"===N){for(z+=N,n();r(N);)z+=N,n();return"false"===z?z=!1:"true"===z?z=!0:isNaN(Number(z))||(z=Number(z)),void(L=E.IDENTIFIER)}if('"'===N){for(n();""!=N&&('"'!=N||'"'===N&&'"'===s());)z+=N,'"'===N&&n(),n();if('"'!=N)throw _('End of string " expected');return n(),void(L=E.IDENTIFIER)}for(L=E.UNKNOWN;""!=N;)z+=N,n();throw new SyntaxError('Syntax error in part "'+x(z,30)+'"')}function p(){var t={};if(o(),c(),"strict"===z&&(t.strict=!0,c()),("graph"===z||"digraph"===z)&&(t.type=z,c()),L===E.IDENTIFIER&&(t.id=z,c()),"{"!=z)throw _("Angle bracket { expected");if(c(),f(t),"}"!=z)throw _("Angle bracket } expected"); +if(c(),""!==z)throw _("End of file expected");return c(),delete t.node,delete t.edge,delete t.graph,t}function f(t){for(;""!==z&&"}"!=z;)m(t),";"===z&&c()}function m(t){var e=v(t);if(e)return void b(t,e);var i=g(t);if(!i){if(L!=E.IDENTIFIER)throw _("Identifier expected");var o=z;if(c(),"="===z){if(c(),L!=E.IDENTIFIER)throw _("Identifier expected");t[o]=z,c()}else y(t,o)}}function v(t){var e=null;if("subgraph"===z&&(e={},e.type="subgraph",c(),L===E.IDENTIFIER&&(e.id=z,c())),"{"===z){if(c(),e||(e={}),e.parent=t,e.node=t.node,e.edge=t.edge,e.graph=t.graph,f(e),"}"!=z)throw _("Angle bracket } expected");c(),delete e.node,delete e.edge,delete e.graph,delete e.parent,t.subgraphs||(t.subgraphs=[]),t.subgraphs.push(e)}return e}function g(t){return"node"===z?(c(),t.node=w(),"node"):"edge"===z?(c(),t.edge=w(),"edge"):"graph"===z?(c(),t.graph=w(),"graph"):null}function y(t,e){var i={id:e},o=w();o&&(i.attr=o),d(t,i),b(t,e)}function b(t,e){for(;"->"===z||"--"===z;){var i,o=z;c();var n=v(t);if(n)i=n;else{if(L!=E.IDENTIFIER)throw _("Identifier or subgraph expected");i=z,d(t,{id:i}),c()}var s=w(),r=u(t,e,i,o,s);l(t,r),e=i}}function w(){for(var t=null;"["===z;){for(c(),t={};""!==z&&"]"!=z;){if(L!=E.IDENTIFIER)throw _("Attribute name expected");var e=z;if(c(),"="!=z)throw _("Equal sign = expected");if(c(),L!=E.IDENTIFIER)throw _("Attribute value expected");var i=z;h(t,e,i),c(),","==z&&c()}if("]"!=z)throw _("Bracket ] expected");c()}return t}function _(t){return new SyntaxError(t+', got "'+x(z,30)+'" (char '+I+")")}function x(t,e){return t.length<=e?t:t.substr(0,27)+"..."}function k(t,e,i){Array.isArray(t)?t.forEach(function(t){Array.isArray(e)?e.forEach(function(e){i(t,e)}):i(t,e)}):Array.isArray(e)?e.forEach(function(e){i(t,e)}):i(t,e)}function M(t,e,i){for(var o=e.split("."),n=o.pop(),s=t,r=0;r":!0,"--":!0},P="",I=0,N="",z="",L=E.NULL,A=/[a-zA-Z_0-9.:#]/;e.parseDOT=i,e.DOTToGraph=D},function(t,e){function i(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;a. - fixed Object or Boolean @@ -592,6 +591,21 @@ mySize = minSize + diff * scale; triangleDown, square and icon. + + shapeProperties + Object + Object + This object contains configuration for specific shapes + + + + shapeProperties.borderDashes + Array or Boolean + false + This property applies to all shapes that have borders. + You set the dashes by supplying an Array. Array formart: [dash length, gap length]. + + size Number diff --git a/examples/network/nodeStyles/shapesWithDashedBorders.html b/examples/network/nodeStyles/shapesWithDashedBorders.html new file mode 100644 index 00000000..2f0dfc8c --- /dev/null +++ b/examples/network/nodeStyles/shapesWithDashedBorders.html @@ -0,0 +1,61 @@ + + + + Network | Shapes + + + + + + + + + + + +

+ Nodes can have all sorts of shapes. Note the exception where the nodes with text inside and the text type's size are determined by the font size, not the node size. +

+
+ +
+ + diff --git a/lib/network/modules/NodesHandler.js b/lib/network/modules/NodesHandler.js index c6518fdf..40864840 100644 --- a/lib/network/modules/NodesHandler.js +++ b/lib/network/modules/NodesHandler.js @@ -16,16 +16,16 @@ class NodesHandler { this.body.functions.createNode = this.create.bind(this); this.nodesListeners = { - add: (event, params) => {this.add(params.items);}, - update: (event, params) => {this.update(params.items, params.data);}, - remove: (event, params) => {this.remove(params.items);} + add: (event, params) => { this.add(params.items); }, + update: (event, params) => { this.update(params.items, params.data); }, + remove: (event, params) => { this.remove(params.items); } }; this.options = {}; this.defaultOptions = { borderWidth: 1, borderWidthSelected: 2, - brokenImage:undefined, + brokenImage: undefined, color: { border: '#2B7CE9', background: '#97C2FC', @@ -39,8 +39,8 @@ class NodesHandler { } }, fixed: { - x:false, - y:false + x: false, + y: false }, font: { color: '#343434', @@ -57,7 +57,7 @@ class NodesHandler { face: 'FontAwesome', //'FontAwesome', code: undefined, //'\uf007', size: 50, //50, - color:'#2B7CE9' //'#aa00ff' + color: '#2B7CE9' //'#aa00ff' }, image: undefined, // --> URL label: undefined, @@ -75,23 +75,26 @@ class NodesHandler { maxVisible: 30, drawThreshold: 5 }, - customScalingFunction: function (min,max,total,value) { + customScalingFunction: function (min, max, total, value) { if (max === min) { return 0.5; } else { let scale = 1 / (max - min); - return Math.max(0,(value - min)*scale); + return Math.max(0, (value - min) * scale); } } }, - shadow:{ + shadow: { enabled: false, - size:10, - x:5, - y:5 + size: 10, + x: 5, + y: 5 }, shape: 'ellipse', + shapeProperties: { + borderDashes: false + }, size: 25, title: undefined, value: undefined, @@ -106,8 +109,8 @@ class NodesHandler { bindEventListeners() { // refresh the nodes. Used when reverting from hierarchical layout this.body.emitter.on('refreshNodes', this.refresh.bind(this)); - this.body.emitter.on('refresh', this.refresh.bind(this)); - this.body.emitter.on('destroy', () => { + this.body.emitter.on('refresh', this.refresh.bind(this)); + this.body.emitter.on('destroy', () => { delete this.body.functions.createNode; delete this.nodesListeners.add; delete this.nodesListeners.update; @@ -296,7 +299,7 @@ class NodesHandler { } let data = this.body.data.nodes._data[nodeId]; if (node !== undefined && data !== undefined) { - node.setOptions({fixed:false}); + node.setOptions({ fixed: false }); node.setOptions(data); } } @@ -314,14 +317,14 @@ class NodesHandler { for (let i = 0; i < ids.length; i++) { if (this.body.nodes[ids[i]] !== undefined) { let node = this.body.nodes[ids[i]]; - dataArray[ids[i]] = {x: Math.round(node.x), y: Math.round(node.y)}; + dataArray[ids[i]] = { x: Math.round(node.x), y: Math.round(node.y) }; } } } else { if (this.body.nodes[ids] !== undefined) { let node = this.body.nodes[ids]; - dataArray[ids] = {x: Math.round(node.x), y: Math.round(node.y)}; + dataArray[ids] = { x: Math.round(node.x), y: Math.round(node.y) }; } } } @@ -329,7 +332,7 @@ class NodesHandler { for (let nodeId in this.body.nodes) { if (this.body.nodes.hasOwnProperty(nodeId)) { let node = this.body.nodes[nodeId]; - dataArray[nodeId] = {x: Math.round(node.x), y: Math.round(node.y)}; + dataArray[nodeId] = { x: Math.round(node.x), y: Math.round(node.y) }; } } } @@ -349,7 +352,7 @@ class NodesHandler { if (dataset._data.hasOwnProperty(nodeId)) { let node = this.body.nodes[nodeId]; if (dataset._data[nodeId].x != Math.round(node.x) || dataset._data[nodeId].y != Math.round(node.y)) { - dataArray.push({id:nodeId,x:Math.round(node.x),y:Math.round(node.y)}); + dataArray.push({ id: nodeId, x: Math.round(node.x), y: Math.round(node.y) }); } } } diff --git a/lib/network/modules/components/nodes/shapes/Box.js b/lib/network/modules/components/nodes/shapes/Box.js index ef48b73d..fe9810f3 100644 --- a/lib/network/modules/components/nodes/shapes/Box.js +++ b/lib/network/modules/components/nodes/shapes/Box.js @@ -35,10 +35,14 @@ class Box extends NodeBase { let borderRadius = 6; ctx.roundRect(this.left, this.top, this.width, this.height, borderRadius); + //draw dashed border if enabled + this.enableBorderDashes(ctx); // draw shadow if enabled this.enableShadow(ctx); ctx.fill(); + //disable dashed border for other elements + this.disableBorderDashes(ctx); // disable shadows for other elements. this.disableShadow(ctx); diff --git a/lib/network/modules/components/nodes/shapes/Database.js b/lib/network/modules/components/nodes/shapes/Database.js index 6c9a10bf..11e3552c 100644 --- a/lib/network/modules/components/nodes/shapes/Database.js +++ b/lib/network/modules/components/nodes/shapes/Database.js @@ -34,10 +34,14 @@ class Database extends NodeBase { ctx.fillStyle = selected ? this.options.color.highlight.background : hover ? this.options.color.hover.background : this.options.color.background; ctx.database(x - this.width / 2, y - this.height * 0.5, this.width, this.height); + //draw dashed border if enabled + this.enableBorderDashes(ctx); // draw shadow if enabled this.enableShadow(ctx); ctx.fill(); + //disable dashed border for other elements + this.disableBorderDashes(ctx); // disable shadows for other elements. this.disableShadow(ctx); diff --git a/lib/network/modules/components/nodes/shapes/Ellipse.js b/lib/network/modules/components/nodes/shapes/Ellipse.js index f263358d..2d486e6e 100644 --- a/lib/network/modules/components/nodes/shapes/Ellipse.js +++ b/lib/network/modules/components/nodes/shapes/Ellipse.js @@ -37,10 +37,14 @@ class Ellipse extends NodeBase { ctx.fillStyle = selected ? this.options.color.highlight.background : hover ? this.options.color.hover.background : this.options.color.background; ctx.ellipse(this.left, this.top, this.width, this.height); + //draw dashed border if enabled + this.enableBorderDashes(ctx); // draw shadow if enabled this.enableShadow(ctx); ctx.fill(); + //disable dashed border for other elements + this.disableBorderDashes(ctx); // disable shadows for other elements. this.disableShadow(ctx); diff --git a/lib/network/modules/components/nodes/util/CircleImageBase.js b/lib/network/modules/components/nodes/util/CircleImageBase.js index 500e18a8..4d941388 100644 --- a/lib/network/modules/components/nodes/util/CircleImageBase.js +++ b/lib/network/modules/components/nodes/util/CircleImageBase.js @@ -46,7 +46,7 @@ class CircleImageBase extends NodeBase { } this.width = width; this.height = height; - this.radius = 0.5*this.width; + this.radius = 0.5 * this.width; } } @@ -60,14 +60,17 @@ class CircleImageBase extends NodeBase { ctx.lineWidth = (selected ? selectionLineWidth : borderWidth); ctx.lineWidth *= this.networkScaleInv; ctx.lineWidth = Math.min(this.width, ctx.lineWidth); - ctx.fillStyle = selected ? this.options.color.highlight.background : hover ? this.options.color.hover.background : this.options.color.background; ctx.circle(x, y, size); + //draw dashed border if enabled + this.enableBorderDashes(ctx); // draw shadow if enabled this.enableShadow(ctx); ctx.fill(); + //disable dashed border for other elements + this.disableBorderDashes(ctx); // disable shadows for other elements. this.disableShadow(ctx); diff --git a/lib/network/modules/components/nodes/util/NodeBase.js b/lib/network/modules/components/nodes/util/NodeBase.js index b718a7f1..78a2d9e4 100644 --- a/lib/network/modules/components/nodes/util/NodeBase.js +++ b/lib/network/modules/components/nodes/util/NodeBase.js @@ -39,6 +39,18 @@ class NodeBase { ctx.shadowOffsetY = 0; } } + + enableBorderDashes(ctx) { + if (this.options.shapeProperties.borderDashes !== false) { + ctx.setLineDash(this.options.shapeProperties.borderDashes); + } + } + + disableBorderDashes(ctx) { + if (this.options.shapeProperties.borderDashes == false) { + ctx.setLineDash([0]); + } + } } export default NodeBase; \ No newline at end of file diff --git a/lib/network/modules/components/nodes/util/ShapeBase.js b/lib/network/modules/components/nodes/util/ShapeBase.js index 638efc57..dc99032c 100644 --- a/lib/network/modules/components/nodes/util/ShapeBase.js +++ b/lib/network/modules/components/nodes/util/ShapeBase.js @@ -30,10 +30,14 @@ class ShapeBase extends NodeBase { ctx.fillStyle = selected ? this.options.color.highlight.background : hover ? this.options.color.hover.background : this.options.color.background; ctx[shape](x, y, this.options.size); + //draw dashed border if enabled + this.enableBorderDashes(ctx); // draw shadow if enabled this.enableShadow(ctx); ctx.fill(); + //disable dashed border for other elements + this.disableBorderDashes(ctx); // disable shadows for other elements. this.disableShadow(ctx); diff --git a/lib/network/options.js b/lib/network/options.js index 673ba664..3421f492 100644 --- a/lib/network/options.js +++ b/lib/network/options.js @@ -16,267 +16,271 @@ let any = 'any'; let allOptions = { configure: { - enabled: {boolean}, - filter: {boolean,string,array,'function': 'function'}, - container: {dom}, - showButton: {boolean}, - __type__: {object,boolean,string,array,'function': 'function'} + enabled: { boolean }, + filter: { boolean, string, array, 'function': 'function' }, + container: { dom }, + showButton: { boolean }, + __type__: { object, boolean, string, array, 'function': 'function' } }, edges: { arrows: { - to: {enabled: {boolean}, scaleFactor: {number}, __type__: {object, boolean}}, - middle: {enabled: {boolean}, scaleFactor: {number}, __type__: {object, boolean}}, - from: {enabled: {boolean}, scaleFactor: {number}, __type__: {object, boolean}}, - __type__: {string:['from','to','middle'],object} + to: { enabled: { boolean }, scaleFactor: { number }, __type__: { object, boolean } }, + middle: { enabled: { boolean }, scaleFactor: { number }, __type__: { object, boolean } }, + from: { enabled: { boolean }, scaleFactor: { number }, __type__: { object, boolean } }, + __type__: { string: ['from', 'to', 'middle'], object } }, color: { - color: {string}, - highlight: {string}, - hover: {string}, - inherit: {string:['from','to','both'],boolean}, - opacity: {number}, - __type__: {object, string} - }, - dashes: {boolean,array}, + color: { string }, + highlight: { string }, + hover: { string }, + inherit: { string: ['from', 'to', 'both'], boolean }, + opacity: { number }, + __type__: { object, string } + }, + dashes: { boolean, array }, font: { - color: {string}, - size: {number}, // px - face: {string}, - background: {string}, - strokeWidth: {number}, // px - strokeColor: {string}, - align: {string:['horizontal','top','middle','bottom']}, - __type__: {object,string} - }, - hidden: {boolean}, - hoverWidth: {'function': 'function',number}, - label: {string,'undefined': 'undefined'}, - labelHighlightBold: {boolean}, - length: {number,'undefined': 'undefined'}, - physics: {boolean}, + color: { string }, + size: { number }, // px + face: { string }, + background: { string }, + strokeWidth: { number }, // px + strokeColor: { string }, + align: { string: ['horizontal', 'top', 'middle', 'bottom'] }, + __type__: { object, string } + }, + hidden: { boolean }, + hoverWidth: { 'function': 'function', number }, + label: { string, 'undefined': 'undefined' }, + labelHighlightBold: { boolean }, + length: { number, 'undefined': 'undefined' }, + physics: { boolean }, scaling: { - min: {number}, - max: {number}, + min: { number }, + max: { number }, label: { - enabled: {boolean}, - min: {number}, - max: {number}, - maxVisible: {number}, - drawThreshold: {number}, - __type__: {object,boolean} + enabled: { boolean }, + min: { number }, + max: { number }, + maxVisible: { number }, + drawThreshold: { number }, + __type__: { object, boolean } }, - customScalingFunction: {'function': 'function'}, - __type__: {object} + customScalingFunction: { 'function': 'function' }, + __type__: { object } }, - selectionWidth: {'function': 'function',number}, - selfReferenceSize: {number}, + selectionWidth: { 'function': 'function', number }, + selfReferenceSize: { number }, shadow: { - enabled: {boolean}, - size: {number}, - x: {number}, - y: {number}, - __type__: {object,boolean} + enabled: { boolean }, + size: { number }, + x: { number }, + y: { number }, + __type__: { object, boolean } }, smooth: { - enabled: {boolean}, - type: {string:['dynamic','continuous','discrete','diagonalCross','straightCross','horizontal','vertical','curvedCW','curvedCCW']}, - roundness: {number}, - __type__: {object,boolean} - }, - title: {string, 'undefined': 'undefined'}, - width: {number}, - value: {number, 'undefined': 'undefined'}, - __type__: {object} + enabled: { boolean }, + type: { string: ['dynamic', 'continuous', 'discrete', 'diagonalCross', 'straightCross', 'horizontal', 'vertical', 'curvedCW', 'curvedCCW'] }, + roundness: { number }, + __type__: { object, boolean } + }, + title: { string, 'undefined': 'undefined' }, + width: { number }, + value: { number, 'undefined': 'undefined' }, + __type__: { object } }, groups: { - useDefaultGroups: {boolean}, + useDefaultGroups: { boolean }, __any__: 'get from nodes, will be overwritten below', - __type__: {object} + __type__: { object } }, interaction: { - dragNodes: {boolean}, - dragView: {boolean}, - hideEdgesOnDrag: {boolean}, - hideNodesOnDrag: {boolean}, - hover: {boolean}, + dragNodes: { boolean }, + dragView: { boolean }, + hideEdgesOnDrag: { boolean }, + hideNodesOnDrag: { boolean }, + hover: { boolean }, keyboard: { - enabled: {boolean}, - speed: {x: {number}, y: {number}, zoom: {number}, __type__: {object}}, - bindToWindow: {boolean}, - __type__: {object,boolean} - }, - multiselect: {boolean}, - navigationButtons: {boolean}, - selectable: {boolean}, - selectConnectedEdges: {boolean}, - hoverConnectedEdges: {boolean}, - tooltipDelay: {number}, - zoomView: {boolean}, - __type__: {object} + enabled: { boolean }, + speed: { x: { number }, y: { number }, zoom: { number }, __type__: { object } }, + bindToWindow: { boolean }, + __type__: { object, boolean } + }, + multiselect: { boolean }, + navigationButtons: { boolean }, + selectable: { boolean }, + selectConnectedEdges: { boolean }, + hoverConnectedEdges: { boolean }, + tooltipDelay: { number }, + zoomView: { boolean }, + __type__: { object } }, layout: { - randomSeed: {'undefined': 'undefined',number}, + randomSeed: { 'undefined': 'undefined', number }, hierarchical: { - enabled: {boolean}, - levelSeparation: {number}, - direction: {string:['UD','DU','LR','RL']}, // UD, DU, LR, RL - sortMethod: {string:['hubsize','directed']}, // hubsize, directed - __type__: {object,boolean} + enabled: { boolean }, + levelSeparation: { number }, + direction: { string: ['UD', 'DU', 'LR', 'RL'] }, // UD, DU, LR, RL + sortMethod: { string: ['hubsize', 'directed'] }, // hubsize, directed + __type__: { object, boolean } }, - __type__: {object} + __type__: { object } }, manipulation: { - enabled: {boolean}, - initiallyActive: {boolean}, - addNode: {boolean,'function': 'function'}, - addEdge: {boolean,'function': 'function'}, - editNode: {'function': 'function'}, - editEdge: {boolean,'function': 'function'}, - deleteNode: {boolean,'function': 'function'}, - deleteEdge: {boolean,'function': 'function'}, + enabled: { boolean }, + initiallyActive: { boolean }, + addNode: { boolean, 'function': 'function' }, + addEdge: { boolean, 'function': 'function' }, + editNode: { 'function': 'function' }, + editEdge: { boolean, 'function': 'function' }, + deleteNode: { boolean, 'function': 'function' }, + deleteEdge: { boolean, 'function': 'function' }, controlNodeStyle: 'get from nodes, will be overwritten below', - __type__: {object,boolean} + __type__: { object, boolean } }, nodes: { - borderWidth: {number}, - borderWidthSelected: {number,'undefined': 'undefined'}, - brokenImage: {string,'undefined': 'undefined'}, + borderWidth: { number }, + borderWidthSelected: { number, 'undefined': 'undefined' }, + brokenImage: { string, 'undefined': 'undefined' }, color: { - border: {string}, - background: {string}, + border: { string }, + background: { string }, highlight: { - border: {string}, - background: {string}, - __type__: {object,string} + border: { string }, + background: { string }, + __type__: { object, string } }, hover: { - border: {string}, - background: {string}, - __type__: {object,string} + border: { string }, + background: { string }, + __type__: { object, string } }, - __type__: {object,string} + __type__: { object, string } }, fixed: { - x: {boolean}, - y: {boolean}, - __type__: {object,boolean} + x: { boolean }, + y: { boolean }, + __type__: { object, boolean } }, font: { - color: {string}, - size: {number}, // px - face: {string}, - background: {string}, - strokeWidth: {number}, // px - strokeColor: {string}, - __type__: {object,string} - }, - group: {string,number,'undefined': 'undefined'}, - hidden: {boolean}, + color: { string }, + size: { number }, // px + face: { string }, + background: { string }, + strokeWidth: { number }, // px + strokeColor: { string }, + __type__: { object, string } + }, + group: { string, number, 'undefined': 'undefined' }, + hidden: { boolean }, icon: { - face: {string}, - code: {string}, //'\uf007', - size: {number}, //50, - color: {string}, - __type__: {object} - }, - id: {string, number}, - image: {string,'undefined': 'undefined'}, // --> URL - label: {string,'undefined': 'undefined'}, - labelHighlightBold: {boolean}, - level: {number,'undefined': 'undefined'}, - mass: {number}, - physics: {boolean}, + face: { string }, + code: { string }, //'\uf007', + size: { number }, //50, + color: { string }, + __type__: { object } + }, + id: { string, number }, + image: { string, 'undefined': 'undefined' }, // --> URL + label: { string, 'undefined': 'undefined' }, + labelHighlightBold: { boolean }, + level: { number, 'undefined': 'undefined' }, + mass: { number }, + physics: { boolean }, scaling: { - min: {number}, - max: {number}, + min: { number }, + max: { number }, label: { - enabled: {boolean}, - min: {number}, - max: {number}, - maxVisible: {number}, - drawThreshold: {number}, - __type__: {object, boolean} + enabled: { boolean }, + min: { number }, + max: { number }, + maxVisible: { number }, + drawThreshold: { number }, + __type__: { object, boolean } }, - customScalingFunction: {'function': 'function'}, - __type__: {object} + customScalingFunction: { 'function': 'function' }, + __type__: { object } }, shadow: { - enabled: {boolean}, - size: {number}, - x: {number}, - y: {number}, - __type__: {object,boolean} - }, - shape: {string:['ellipse', 'circle', 'database', 'box', 'text','image', 'circularImage','diamond', 'dot', 'star', 'triangle', 'triangleDown', 'square','icon']}, - size: {number}, - title: {string,'undefined': 'undefined'}, - value: {number,'undefined': 'undefined'}, - x: {number}, - y: {number}, - __type__: {object} + enabled: { boolean }, + size: { number }, + x: { number }, + y: { number }, + __type__: { object, boolean } + }, + shape: { string: ['ellipse', 'circle', 'database', 'box', 'text', 'image', 'circularImage', 'diamond', 'dot', 'star', 'triangle', 'triangleDown', 'square', 'icon'] }, + shapeProperties: { + borderDashes: { boolean, array }, + __type__: { object } + }, + size: { number }, + title: { string, 'undefined': 'undefined' }, + value: { number, 'undefined': 'undefined' }, + x: { number }, + y: { number }, + __type__: { object } }, physics: { - enabled:{boolean}, + enabled: { boolean }, barnesHut: { - gravitationalConstant: {number}, - centralGravity: {number}, - springLength: {number}, - springConstant: {number}, - damping: {number}, - avoidOverlap: {number}, - __type__: {object} + gravitationalConstant: { number }, + centralGravity: { number }, + springLength: { number }, + springConstant: { number }, + damping: { number }, + avoidOverlap: { number }, + __type__: { object } }, forceAtlas2Based: { - gravitationalConstant: {number}, - centralGravity: {number}, - springLength: {number}, - springConstant: {number}, - damping: {number}, - avoidOverlap: {number}, - __type__: {object} + gravitationalConstant: { number }, + centralGravity: { number }, + springLength: { number }, + springConstant: { number }, + damping: { number }, + avoidOverlap: { number }, + __type__: { object } }, repulsion: { - centralGravity: {number}, - springLength: {number}, - springConstant: {number}, - nodeDistance: {number}, - damping: {number}, - __type__: {object} + centralGravity: { number }, + springLength: { number }, + springConstant: { number }, + nodeDistance: { number }, + damping: { number }, + __type__: { object } }, hierarchicalRepulsion: { - centralGravity: {number}, - springLength: {number}, - springConstant: {number}, - nodeDistance: {number}, - damping: {number}, - __type__: {object} - }, - maxVelocity: {number}, - minVelocity: {number}, // px/s - solver: {string:['barnesHut','repulsion','hierarchicalRepulsion','forceAtlas2Based']}, + centralGravity: { number }, + springLength: { number }, + springConstant: { number }, + nodeDistance: { number }, + damping: { number }, + __type__: { object } + }, + maxVelocity: { number }, + minVelocity: { number }, // px/s + solver: { string: ['barnesHut', 'repulsion', 'hierarchicalRepulsion', 'forceAtlas2Based'] }, stabilization: { - enabled: {boolean}, - iterations: {number}, // maximum number of iteration to stabilize - updateInterval: {number}, - onlyDynamicEdges: {boolean}, - fit: {boolean}, - __type__: {object,boolean} - }, - timestep: {number}, - __type__: {object,boolean} + enabled: { boolean }, + iterations: { number }, // maximum number of iteration to stabilize + updateInterval: { number }, + onlyDynamicEdges: { boolean }, + fit: { boolean }, + __type__: { object, boolean } + }, + timestep: { number }, + __type__: { object, boolean } }, //globals : - autoResize: {boolean}, - clickToUse: {boolean}, - locale:{string}, - locales:{ - __any__: {any}, - __type__: {object} + autoResize: { boolean }, + clickToUse: { boolean }, + locale: { string }, + locales: { + __any__: { any }, + __type__: { object } }, - height: {string}, - width: {string}, - __type__: {object} + height: { string }, + width: { string }, + __type__: { object } }; allOptions.groups.__any__ = allOptions.nodes; @@ -288,15 +292,15 @@ let configureOptions = { borderWidth: [1, 0, 10, 1], borderWidthSelected: [2, 0, 10, 1], color: { - border: ['color','#2B7CE9'], - background: ['color','#97C2FC'], + border: ['color', '#2B7CE9'], + background: ['color', '#97C2FC'], highlight: { - border: ['color','#2B7CE9'], - background: ['color','#D2E5FF'] + border: ['color', '#2B7CE9'], + background: ['color', '#D2E5FF'] }, hover: { - border: ['color','#2B7CE9'], - background: ['color','#D2E5FF'] + border: ['color', '#2B7CE9'], + background: ['color', '#D2E5FF'] } }, fixed: { @@ -304,12 +308,12 @@ let configureOptions = { y: false }, font: { - color: ['color','#343434'], + color: ['color', '#343434'], size: [14, 0, 100, 1], // px face: ['arial', 'verdana', 'tahoma'], - background: ['color','none'], + background: ['color', 'none'], strokeWidth: [0, 0, 50, 1], // px - strokeColor: ['color','#ffffff'] + strokeColor: ['color', '#ffffff'] }, //group: 'string', hidden: false, @@ -333,36 +337,39 @@ let configureOptions = { drawThreshold: [5, 0, 20, 1] } }, - shadow:{ + shadow: { enabled: false, - size:[10, 0, 20, 1], - x:[5, -30, 30, 1], - y:[5, -30, 30, 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'], + shapeProperties: { + borderDashes: false + }, size: [25, 0, 200, 1] }, edges: { arrows: { - to: {enabled: false, scaleFactor: [1, 0, 3, 0.05]}, // boolean / {arrowScaleFactor:1} / {enabled: false, arrowScaleFactor:1} - middle: {enabled: false, scaleFactor: [1, 0, 3, 0.05]}, - from: {enabled: false, scaleFactor: [1, 0, 3, 0.05]} + to: { enabled: false, scaleFactor: [1, 0, 3, 0.05] }, // boolean / {arrowScaleFactor:1} / {enabled: false, arrowScaleFactor:1} + middle: { enabled: false, scaleFactor: [1, 0, 3, 0.05] }, + from: { enabled: false, scaleFactor: [1, 0, 3, 0.05] } }, color: { - color: ['color','#848484'], - highlight: ['color','#848484'], - hover: ['color','#848484'], - inherit: ['from','to','both',true, false], + color: ['color', '#848484'], + highlight: ['color', '#848484'], + hover: ['color', '#848484'], + inherit: ['from', 'to', 'both', true, false], opacity: [1, 0, 1, 0.05] }, dashes: false, font: { - color: ['color','#343434'], + color: ['color', '#343434'], size: [14, 0, 100, 1], // px face: ['arial', 'verdana', 'tahoma'], - background: ['color','none'], + background: ['color', 'none'], strokeWidth: [2, 0, 50, 1], // px - strokeColor: ['color','#ffffff'], + strokeColor: ['color', '#ffffff'], align: ['horizontal', 'top', 'middle', 'bottom'] }, hidden: false, @@ -382,15 +389,15 @@ let configureOptions = { }, selectionWidth: [1.5, 0, 5, 0.1], selfReferenceSize: [20, 0, 200, 1], - shadow:{ + shadow: { enabled: false, - size:[10, 0, 20, 1], - x:[5, -30, 30, 1], - y:[5, -30, 30, 1] + size: [10, 0, 20, 1], + x: [5, -30, 30, 1], + y: [5, -30, 30, 1] }, smooth: { enabled: true, - type: ['dynamic','continuous', 'discrete', 'diagonalCross', 'straightCross', 'horizontal', 'vertical', 'curvedCW', 'curvedCCW'], + type: ['dynamic', 'continuous', 'discrete', 'diagonalCross', 'straightCross', 'horizontal', 'vertical', 'curvedCW', 'curvedCCW'], roundness: [0.5, 0, 1, 0.05] }, width: [1, 0, 30, 1] @@ -412,7 +419,7 @@ let configureOptions = { hover: false, keyboard: { enabled: false, - speed: {x: [10, 0, 40, 1], y: [10, 0, 40, 1], zoom: [0.02, 0, 0.1, 0.005]}, + speed: { x: [10, 0, 40, 1], y: [10, 0, 40, 1], zoom: [0.02, 0, 0.1, 0.005] }, bindToWindow: true }, multiselect: false, diff --git a/lib/util.js b/lib/util.js index 0b0119d1..47960085 100644 --- a/lib/util.js +++ b/lib/util.js @@ -12,7 +12,7 @@ var uuid = require('./module/uuid'); * @param {*} object * @return {Boolean} isNumber */ -exports.isNumber = function(object) { +exports.isNumber = function (object) { return (object instanceof Number || typeof object == 'number'); }; @@ -21,7 +21,7 @@ exports.isNumber = function(object) { * Remove everything in the DOM object * @param DOMobject */ -exports.recursiveDOMDelete = function(DOMobject) { +exports.recursiveDOMDelete = function (DOMobject) { if (DOMobject) { while (DOMobject.hasChildNodes() === true) { exports.recursiveDOMDelete(DOMobject.firstChild); @@ -39,13 +39,13 @@ exports.recursiveDOMDelete = function(DOMobject) { * @param value * @returns {number} */ -exports.giveRange = function(min,max,total,value) { +exports.giveRange = function (min, max, total, value) { if (max == min) { return 0.5; } else { var scale = 1 / (max - min); - return Math.max(0,(value - min)*scale); + return Math.max(0, (value - min) * scale); } } @@ -54,7 +54,7 @@ exports.giveRange = function(min,max,total,value) { * @param {*} object * @return {Boolean} isString */ -exports.isString = function(object) { +exports.isString = function (object) { return (object instanceof String || typeof object == 'string'); }; @@ -63,7 +63,7 @@ exports.isString = function(object) { * @param {Date | String} object * @return {Boolean} isDate */ -exports.isDate = function(object) { +exports.isDate = function (object) { if (object instanceof Date) { return true; } @@ -86,7 +86,7 @@ exports.isDate = function(object) { * source: http://stackoverflow.com/a/105074/1262753 * @return {String} uuid */ -exports.randomUUID = function() { +exports.randomUUID = function () { return uuid.v4(); }; @@ -125,7 +125,7 @@ exports.fillIfDefined = function (a, b, allowDeletion = false) { } else { if (typeof a[prop] === 'object') { - exports.fillIfDefined(a[prop],b[prop],allowDeletion); + exports.fillIfDefined(a[prop], b[prop], allowDeletion); } } } @@ -273,7 +273,10 @@ exports.selectiveNotDeepExtend = function (props, a, b, allowDeletion = false) { } } } else if (Array.isArray(b[prop])) { - throw new TypeError('Arrays are not supported by deepExtend'); + a[prop] = []; + for (let i = 0; i < b[prop].length; i++) { + a[prop].push(b[prop][i]); + } } else { a[prop] = b[prop]; } @@ -292,7 +295,7 @@ exports.selectiveNotDeepExtend = function (props, a, b, allowDeletion = false) { * @param [Boolean] global --> optional parameter. If true, the values of fields that are null will not deleted * @returns {Object} */ -exports.deepExtend = function(a, b, protoExtend, allowDeletion) { +exports.deepExtend = function (a, b, protoExtend, allowDeletion) { for (var prop in b) { if (b.hasOwnProperty(prop) || protoExtend === true) { if (b[prop] && b[prop].constructor === Object) { @@ -349,7 +352,7 @@ exports.equalArray = function (a, b) { * @return {*} object * @throws Error */ -exports.convert = function(object, type) { +exports.convert = function (object, type) { var match; if (object === undefined) { @@ -402,8 +405,8 @@ exports.convert = function(object, type) { } else { throw new Error( - 'Cannot convert object of type ' + exports.getType(object) + - ' to type Date'); + 'Cannot convert object of type ' + exports.getType(object) + + ' to type Date'); } case 'Moment': @@ -428,8 +431,8 @@ exports.convert = function(object, type) { } else { throw new Error( - 'Cannot convert object of type ' + exports.getType(object) + - ' to type Date'); + 'Cannot convert object of type ' + exports.getType(object) + + ' to type Date'); } case 'ISODate': @@ -454,8 +457,8 @@ exports.convert = function(object, type) { } else { throw new Error( - 'Cannot convert object of type ' + exports.getType(object) + - ' to type ISODate'); + 'Cannot convert object of type ' + exports.getType(object) + + ' to type ISODate'); } case 'ASPDate': @@ -479,8 +482,8 @@ exports.convert = function(object, type) { } else { throw new Error( - 'Cannot convert object of type ' + exports.getType(object) + - ' to type ASPDate'); + 'Cannot convert object of type ' + exports.getType(object) + + ' to type ASPDate'); } default: @@ -498,7 +501,7 @@ var ASPDateRegex = /^\/?Date\((\-?\d+)/i; * @param {*} object * @return {String} type */ -exports.getType = function(object) { +exports.getType = function (object) { var type = typeof object; if (type == 'object') { @@ -547,7 +550,7 @@ exports.getType = function(object) { * @param newValue * @returns {Array} */ -exports.copyAndExtendArray = function(arr,newValue) { +exports.copyAndExtendArray = function (arr, newValue) { let newArr = []; for (let i = 0; i < arr.length; i++) { newArr.push(arr[i]); @@ -563,7 +566,7 @@ exports.copyAndExtendArray = function(arr,newValue) { * @param newValue * @returns {Array} */ -exports.copyArray = function(arr) { +exports.copyArray = function (arr) { let newArr = []; for (let i = 0; i < arr.length; i++) { newArr.push(arr[i]); @@ -577,7 +580,7 @@ exports.copyArray = function(arr) { * @return {number} left The absolute left position of this element * in the browser page. */ -exports.getAbsoluteLeft = function(elem) { +exports.getAbsoluteLeft = function (elem) { return elem.getBoundingClientRect().left; }; @@ -587,7 +590,7 @@ exports.getAbsoluteLeft = function(elem) { * @return {number} top The absolute top position of this element * in the browser page. */ -exports.getAbsoluteTop = function(elem) { +exports.getAbsoluteTop = function (elem) { return elem.getBoundingClientRect().top; }; @@ -596,7 +599,7 @@ exports.getAbsoluteTop = function(elem) { * @param {Element} elem * @param {String} className */ -exports.addClassName = function(elem, className) { +exports.addClassName = function (elem, className) { var classes = elem.className.split(' '); if (classes.indexOf(className) == -1) { classes.push(className); // add the class to the array @@ -609,7 +612,7 @@ exports.addClassName = function(elem, className) { * @param {Element} elem * @param {String} className */ -exports.removeClassName = function(elem, className) { +exports.removeClassName = function (elem, className) { var classes = elem.className.split(' '); var index = classes.indexOf(className); if (index != -1) { @@ -627,9 +630,9 @@ exports.removeClassName = function(elem, className) { * the object or array with three parameters: * callback(value, index, object) */ -exports.forEach = function(object, callback) { +exports.forEach = function (object, callback) { var i, - len; + len; if (Array.isArray(object)) { // array for (i = 0, len = object.length; i < len; i++) { @@ -652,7 +655,7 @@ exports.forEach = function(object, callback) { * @param {Object} object * @param {Array} array */ -exports.toArray = function(object) { +exports.toArray = function (object) { var array = []; for (var prop in object) { @@ -669,7 +672,7 @@ exports.toArray = function(object) { * @param {*} value * @return {Boolean} changed */ -exports.updateProperty = function(object, key, value) { +exports.updateProperty = function (object, key, value) { if (object[key] !== value) { object[key] = value; return true; @@ -687,7 +690,7 @@ exports.updateProperty = function(object, key, value) { * @param {function} listener The callback function to be executed * @param {boolean} [useCapture] */ -exports.addEventListener = function(element, action, listener, useCapture) { +exports.addEventListener = function (element, action, listener, useCapture) { if (element.addEventListener) { if (useCapture === undefined) useCapture = false; @@ -709,7 +712,7 @@ exports.addEventListener = function(element, action, listener, useCapture) { * @param {function} listener The listener function * @param {boolean} [useCapture] */ -exports.removeEventListener = function(element, action, listener, useCapture) { +exports.removeEventListener = function (element, action, listener, useCapture) { if (element.removeEventListener) { // non-IE browsers if (useCapture === undefined) @@ -746,7 +749,7 @@ exports.preventDefault = function (event) { * @param {Event} event * @return {Element} target element */ -exports.getTarget = function(event) { +exports.getTarget = function (event) { // code from http://www.quirksmode.org/js/events_properties.html if (!event) { event = window.event; @@ -885,17 +888,17 @@ exports.option.asElement = function (value, defaultValue) { * @param {String} hex * @returns {{r: *, g: *, b: *}} | 255 range */ -exports.hexToRGB = function(hex) { +exports.hexToRGB = function (hex) { // Expand shorthand form (e.g. "03F") to full form (e.g. "0033FF") var shorthandRegex = /^#?([a-f\d])([a-f\d])([a-f\d])$/i; - hex = hex.replace(shorthandRegex, function(m, r, g, b) { - return r + r + g + g + b + b; + hex = hex.replace(shorthandRegex, function (m, r, g, b) { + return r + r + g + g + b + b; }); var result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex); return result ? { - r: parseInt(result[1], 16), - g: parseInt(result[2], 16), - b: parseInt(result[3], 16) + r: parseInt(result[1], 16), + g: parseInt(result[2], 16), + b: parseInt(result[3], 16) } : null; }; @@ -905,12 +908,12 @@ exports.hexToRGB = function(hex) { * @param opacity * @returns {*} */ -exports.overrideOpacity = function(color,opacity) { +exports.overrideOpacity = function (color, opacity) { if (color.indexOf("rgba") != -1) { return color; } else if (color.indexOf("rgb") != -1) { - var rgb = color.substr(color.indexOf("(")+1).replace(")","").split(","); + var rgb = color.substr(color.indexOf("(") + 1).replace(")", "").split(","); return "rgba(" + rgb[0] + "," + rgb[1] + "," + rgb[2] + "," + opacity + ")" } else { @@ -932,7 +935,7 @@ exports.overrideOpacity = function(color,opacity) { * @returns {string} * @constructor */ -exports.RGBToHex = function(red,green,blue) { +exports.RGBToHex = function (red, green, blue) { return "#" + ((1 << 24) + (red << 16) + (green << 8) + blue).toString(16).slice(1); }; @@ -942,43 +945,43 @@ exports.RGBToHex = function(red,green,blue) { * @param {Object | String} color * @return {Object} colorObject */ -exports.parseColor = function(color) { +exports.parseColor = function (color) { var c; if (exports.isString(color) === true) { if (exports.isValidRGB(color) === true) { - var rgb = color.substr(4).substr(0,color.length-5).split(',').map(function (value) {return parseInt(value)}); - color = exports.RGBToHex(rgb[0],rgb[1],rgb[2]); + var rgb = color.substr(4).substr(0, color.length - 5).split(',').map(function (value) { return parseInt(value) }); + color = exports.RGBToHex(rgb[0], rgb[1], rgb[2]); } if (exports.isValidHex(color) === true) { var hsv = exports.hexToHSV(color); - var lighterColorHSV = {h:hsv.h,s:hsv.s * 0.8,v:Math.min(1,hsv.v * 1.02)}; - var darkerColorHSV = {h:hsv.h,s:Math.min(1,hsv.s * 1.25),v:hsv.v*0.8}; - var darkerColorHex = exports.HSVToHex(darkerColorHSV.h ,darkerColorHSV.s ,darkerColorHSV.v); - var lighterColorHex = exports.HSVToHex(lighterColorHSV.h,lighterColorHSV.s,lighterColorHSV.v); + var lighterColorHSV = { h: hsv.h, s: hsv.s * 0.8, v: Math.min(1, hsv.v * 1.02) }; + var darkerColorHSV = { h: hsv.h, s: Math.min(1, hsv.s * 1.25), v: hsv.v * 0.8 }; + var darkerColorHex = exports.HSVToHex(darkerColorHSV.h, darkerColorHSV.s, darkerColorHSV.v); + var lighterColorHex = exports.HSVToHex(lighterColorHSV.h, lighterColorHSV.s, lighterColorHSV.v); c = { background: color, - border:darkerColorHex, + border: darkerColorHex, highlight: { - background:lighterColorHex, - border:darkerColorHex + background: lighterColorHex, + border: darkerColorHex }, hover: { - background:lighterColorHex, - border:darkerColorHex + background: lighterColorHex, + border: darkerColorHex } }; } else { c = { - background:color, - border:color, + background: color, + border: color, highlight: { - background:color, - border:color + background: color, + border: color }, hover: { - background:color, - border:color + background: color, + border: color } }; } @@ -1027,23 +1030,23 @@ exports.parseColor = function(color) { * @returns {*} * @constructor */ -exports.RGBToHSV = function(red,green,blue) { - red=red/255; green=green/255; blue=blue/255; - var minRGB = Math.min(red,Math.min(green,blue)); - var maxRGB = Math.max(red,Math.max(green,blue)); +exports.RGBToHSV = function (red, green, blue) { + red = red / 255; green = green / 255; blue = blue / 255; + var minRGB = Math.min(red, Math.min(green, blue)); + var maxRGB = Math.max(red, Math.max(green, blue)); // Black-gray-white if (minRGB == maxRGB) { - return {h:0,s:0,v:minRGB}; + return { h: 0, s: 0, v: minRGB }; } // Colors other than black-gray-white: - var d = (red==minRGB) ? green-blue : ((blue==minRGB) ? red-green : blue-red); - var h = (red==minRGB) ? 3 : ((blue==minRGB) ? 1 : 5); - var hue = 60*(h - d/(maxRGB - minRGB))/360; - var saturation = (maxRGB - minRGB)/maxRGB; + var d = (red == minRGB) ? green - blue : ((blue == minRGB) ? red - green : blue - red); + var h = (red == minRGB) ? 3 : ((blue == minRGB) ? 1 : 5); + var hue = 60 * (h - d / (maxRGB - minRGB)) / 360; + var saturation = (maxRGB - minRGB) / maxRGB; var value = maxRGB; - return {h:hue,s:saturation,v:value}; + return { h: hue, s: saturation, v: value }; }; var cssUtil = { @@ -1066,10 +1069,10 @@ var cssUtil = { // build a css text string from an object with key/values join: function (styles) { return Object.keys(styles) - .map(function (key) { - return key + ': ' + styles[key]; - }) - .join('; '); + .map(function (key) { + return key + ': ' + styles[key]; + }) + .join('; '); } }; @@ -1112,7 +1115,7 @@ exports.removeCssText = function (element, cssText) { * @returns {{r: number, g: number, b: number}} * @constructor */ -exports.HSVToRGB = function(h, s, v) { +exports.HSVToRGB = function (h, s, v) { var r, g, b; var i = Math.floor(h * 6); @@ -1130,31 +1133,31 @@ exports.HSVToRGB = function(h, s, v) { case 5: r = v, g = p, b = q; break; } - return {r:Math.floor(r * 255), g:Math.floor(g * 255), b:Math.floor(b * 255) }; + return { r: Math.floor(r * 255), g: Math.floor(g * 255), b: Math.floor(b * 255) }; }; -exports.HSVToHex = function(h, s, v) { +exports.HSVToHex = function (h, s, v) { var rgb = exports.HSVToRGB(h, s, v); return exports.RGBToHex(rgb.r, rgb.g, rgb.b); }; -exports.hexToHSV = function(hex) { +exports.hexToHSV = function (hex) { var rgb = exports.hexToRGB(hex); return exports.RGBToHSV(rgb.r, rgb.g, rgb.b); }; -exports.isValidHex = function(hex) { +exports.isValidHex = function (hex) { var isOk = /(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(hex); return isOk; }; -exports.isValidRGB = function(rgb) { - rgb = rgb.replace(" ",""); +exports.isValidRGB = function (rgb) { + rgb = rgb.replace(" ", ""); var isOk = /rgb\((\d{1,3}),(\d{1,3}),(\d{1,3})\)/i.test(rgb); return isOk; } -exports.isValidRGBA = function(rgba) { - rgba = rgba.replace(" ",""); +exports.isValidRGBA = function (rgba) { + rgba = rgba.replace(" ", ""); var isOk = /rgba\((\d{1,3}),(\d{1,3}),(\d{1,3}),(.{1,3})\)/i.test(rgba); return isOk; } @@ -1166,7 +1169,7 @@ exports.isValidRGBA = function(rgba) { * @param referenceObject * @returns {*} */ -exports.selectiveBridgeObject = function(fields, referenceObject) { +exports.selectiveBridgeObject = function (fields, referenceObject) { if (typeof referenceObject == "object") { var objectTo = Object.create(referenceObject); for (var i = 0; i < fields.length; i++) { @@ -1190,7 +1193,7 @@ exports.selectiveBridgeObject = function(fields, referenceObject) { * @param referenceObject * @returns {*} */ -exports.bridgeObject = function(referenceObject) { +exports.bridgeObject = function (referenceObject) { if (typeof referenceObject == "object") { var objectTo = Object.create(referenceObject); for (var i in referenceObject) { @@ -1253,7 +1256,7 @@ exports.mergeOptions = function (mergeTarget, options, option, allowDeletion = f * @returns {number} * @private */ -exports.binarySearchCustom = function(orderedItems, searchFunction, field, field2) { +exports.binarySearchCustom = function (orderedItems, searchFunction, field, field2) { var maxIterations = 10000; var iteration = 0; var low = 0; @@ -1294,7 +1297,7 @@ exports.binarySearchCustom = function(orderedItems, searchFunction, field, field * @returns {number} * @private */ -exports.binarySearchValue = function(orderedItems, target, field, sidePreference) { +exports.binarySearchValue = function (orderedItems, target, field, sidePreference) { var maxIterations = 10000; var iteration = 0; var low = 0; @@ -1303,19 +1306,19 @@ exports.binarySearchValue = function(orderedItems, target, field, sidePreference while (low <= high && iteration < maxIterations) { // get a new guess - middle = Math.floor(0.5*(high+low)); - prevValue = orderedItems[Math.max(0,middle - 1)][field]; - value = orderedItems[middle][field]; - nextValue = orderedItems[Math.min(orderedItems.length-1,middle + 1)][field]; + middle = Math.floor(0.5 * (high + low)); + prevValue = orderedItems[Math.max(0, middle - 1)][field]; + value = orderedItems[middle][field]; + nextValue = orderedItems[Math.min(orderedItems.length - 1, middle + 1)][field]; if (value == target) { // we found the target return middle; } else if (prevValue < target && value > target) { // target is in between of the previous and the current - return sidePreference == 'before' ? Math.max(0,middle - 1) : middle; + return sidePreference == 'before' ? Math.max(0, middle - 1) : middle; } else if (value < target && nextValue > target) { // target is in between of the current and the next - return sidePreference == 'before' ? middle : Math.min(orderedItems.length-1,middle + 1); + return sidePreference == 'before' ? middle : Math.min(orderedItems.length - 1, middle + 1); } else { // didnt find the target, we need to change our boundaries. if (value < target) { // it is too small --> increase low