diff --git a/HISTORY.md b/HISTORY.md index 170a5bfb..14c73899 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -4,6 +4,10 @@ http://visjs.org ## not-yet-released, version 4.3.1-SNAPSHOT +### Graph3d + +- Fixed #970: Implemented options `dataColor`, `axisColor`, and `gridColor`. + ## 2015-06-16, version 4.3.0 diff --git a/dist/vis.js b/dist/vis.js index 6b78db97..485e7fd9 100644 --- a/dist/vis.js +++ b/dist/vis.js @@ -5,7 +5,7 @@ * A dynamic, browser-based visualization library. * * @version 4.3.1-SNAPSHOT - * @date 2015-06-16 + * @date 2015-06-17 * * @license * Copyright (C) 2011-2014 Almende B.V, http://almende.com @@ -6597,6 +6597,8 @@ return /******/ (function(modules) { // webpackBootstrap this.animationPreload = false; this.camera = new Camera(); + this.camera.setArmRotation(1, 0.5); + this.camera.setArmLength(1.7); this.eye = new Point3d(0, 0, -1); // TODO: set eye.z about 3/4 of the width of the window? this.dataTable = null; // The original data table @@ -6624,11 +6626,14 @@ return /******/ (function(modules) { // webpackBootstrap this.yBarWidth = 1; // TODO: customize axis range - // constants - this.colorAxis = '#4D4D4D'; - this.colorGrid = '#D3D3D3'; - this.colorDot = '#7DC1FF'; - this.colorDotBorder = '#3267D2'; + // colors + this.axisColor = '#4D4D4D'; + this.gridColor = '#D3D3D3'; + this.dataColor = { + fill: '#7DC1FF', + stroke: '#3267D2', + strokeWidth: 1 // px + }; // create a frame and canvas this.create(); @@ -7384,13 +7389,29 @@ return /******/ (function(modules) { // webpackBootstrap if (cameraPosition !== undefined) { this.camera.setArmRotation(cameraPosition.horizontal, cameraPosition.vertical); this.camera.setArmLength(cameraPosition.distance); - } else { - this.camera.setArmRotation(1, 0.5); - this.camera.setArmLength(1.7); } - } - this._setBackgroundColor(options && options.backgroundColor); + // colors + if (options.axisColor !== undefined) this.axisColor = options.axisColor; + if (options.gridColor !== undefined) this.gridColor = options.gridColor; + if (options.dataColor) { + if (typeof options.dataColor === 'string') { + this.dataColor.fill = options.dataColor; + this.dataColor.stroke = options.dataColor; + } else { + if (options.dataColor.fill) { + this.dataColor.fill = options.dataColor.fill; + } + if (options.dataColor.stroke) { + this.dataColor.stroke = options.dataColor.stroke; + } + if (options.dataColor.strokeWidth !== undefined) { + this.dataColor.strokeWidth = options.dataColor.strokeWidth; + } + } + } + this._setBackgroundColor(options.backgroundColor); + } this.setSize(this.width, this.height); @@ -7493,14 +7514,14 @@ return /******/ (function(modules) { // webpackBootstrap ctx.stroke(); } - ctx.strokeStyle = this.colorAxis; + ctx.strokeStyle = this.axisColor; ctx.strokeRect(left, top, widthMax, height); } if (this.style === Graph3d.STYLE.DOTSIZE) { // draw border around color bar - ctx.strokeStyle = this.colorAxis; - ctx.fillStyle = this.colorDot; + ctx.strokeStyle = this.axisColor; + ctx.fillStyle = this.dataColor.fill; ctx.beginPath(); ctx.moveTo(left, top); ctx.lineTo(right, top); @@ -7529,7 +7550,7 @@ return /******/ (function(modules) { // webpackBootstrap ctx.textAlign = 'right'; ctx.textBaseline = 'middle'; - ctx.fillStyle = this.colorAxis; + ctx.fillStyle = this.axisColor; ctx.fillText(step.getCurrent(), left - 2 * gridLineLen, y); step.next(); @@ -7651,7 +7672,7 @@ return /******/ (function(modules) { // webpackBootstrap if (this.showGrid) { from = this._convert3Dto2D(new Point3d(x, this.yMin, this.zMin)); to = this._convert3Dto2D(new Point3d(x, this.yMax, this.zMin)); - ctx.strokeStyle = this.colorGrid; + ctx.strokeStyle = this.gridColor; ctx.beginPath(); ctx.moveTo(from.x, from.y); ctx.lineTo(to.x, to.y); @@ -7659,7 +7680,7 @@ return /******/ (function(modules) { // webpackBootstrap } else { from = this._convert3Dto2D(new Point3d(x, this.yMin, this.zMin)); to = this._convert3Dto2D(new Point3d(x, this.yMin + gridLenX, this.zMin)); - ctx.strokeStyle = this.colorAxis; + ctx.strokeStyle = this.axisColor; ctx.beginPath(); ctx.moveTo(from.x, from.y); ctx.lineTo(to.x, to.y); @@ -7667,7 +7688,7 @@ return /******/ (function(modules) { // webpackBootstrap from = this._convert3Dto2D(new Point3d(x, this.yMax, this.zMin)); to = this._convert3Dto2D(new Point3d(x, this.yMax - gridLenX, this.zMin)); - ctx.strokeStyle = this.colorAxis; + ctx.strokeStyle = this.axisColor; ctx.beginPath(); ctx.moveTo(from.x, from.y); ctx.lineTo(to.x, to.y); @@ -7687,7 +7708,7 @@ return /******/ (function(modules) { // webpackBootstrap ctx.textAlign = 'left'; ctx.textBaseline = 'middle'; } - ctx.fillStyle = this.colorAxis; + ctx.fillStyle = this.axisColor; ctx.fillText(' ' + this.xValueLabel(step.getCurrent()) + ' ', text.x, text.y); step.next(); @@ -7705,7 +7726,7 @@ return /******/ (function(modules) { // webpackBootstrap if (this.showGrid) { from = this._convert3Dto2D(new Point3d(this.xMin, step.getCurrent(), this.zMin)); to = this._convert3Dto2D(new Point3d(this.xMax, step.getCurrent(), this.zMin)); - ctx.strokeStyle = this.colorGrid; + ctx.strokeStyle = this.gridColor; ctx.beginPath(); ctx.moveTo(from.x, from.y); ctx.lineTo(to.x, to.y); @@ -7713,7 +7734,7 @@ return /******/ (function(modules) { // webpackBootstrap } else { from = this._convert3Dto2D(new Point3d(this.xMin, step.getCurrent(), this.zMin)); to = this._convert3Dto2D(new Point3d(this.xMin + gridLenY, step.getCurrent(), this.zMin)); - ctx.strokeStyle = this.colorAxis; + ctx.strokeStyle = this.axisColor; ctx.beginPath(); ctx.moveTo(from.x, from.y); ctx.lineTo(to.x, to.y); @@ -7721,7 +7742,7 @@ return /******/ (function(modules) { // webpackBootstrap from = this._convert3Dto2D(new Point3d(this.xMax, step.getCurrent(), this.zMin)); to = this._convert3Dto2D(new Point3d(this.xMax - gridLenY, step.getCurrent(), this.zMin)); - ctx.strokeStyle = this.colorAxis; + ctx.strokeStyle = this.axisColor; ctx.beginPath(); ctx.moveTo(from.x, from.y); ctx.lineTo(to.x, to.y); @@ -7741,7 +7762,7 @@ return /******/ (function(modules) { // webpackBootstrap ctx.textAlign = 'left'; ctx.textBaseline = 'middle'; } - ctx.fillStyle = this.colorAxis; + ctx.fillStyle = this.axisColor; ctx.fillText(' ' + this.yValueLabel(step.getCurrent()) + ' ', text.x, text.y); step.next(); @@ -7760,7 +7781,7 @@ return /******/ (function(modules) { // webpackBootstrap while (!step.end()) { // TODO: make z-grid lines really 3d? from = this._convert3Dto2D(new Point3d(xText, yText, step.getCurrent())); - ctx.strokeStyle = this.colorAxis; + ctx.strokeStyle = this.axisColor; ctx.beginPath(); ctx.moveTo(from.x, from.y); ctx.lineTo(from.x - textMargin, from.y); @@ -7768,7 +7789,7 @@ return /******/ (function(modules) { // webpackBootstrap ctx.textAlign = 'right'; ctx.textBaseline = 'middle'; - ctx.fillStyle = this.colorAxis; + ctx.fillStyle = this.axisColor; ctx.fillText(this.zValueLabel(step.getCurrent()) + ' ', from.x - 5, from.y); step.next(); @@ -7776,7 +7797,7 @@ return /******/ (function(modules) { // webpackBootstrap ctx.lineWidth = 1; from = this._convert3Dto2D(new Point3d(xText, yText, this.zMin)); to = this._convert3Dto2D(new Point3d(xText, yText, this.zMax)); - ctx.strokeStyle = this.colorAxis; + ctx.strokeStyle = this.axisColor; ctx.beginPath(); ctx.moveTo(from.x, from.y); ctx.lineTo(to.x, to.y); @@ -7787,7 +7808,7 @@ return /******/ (function(modules) { // webpackBootstrap // line at yMin xMin2d = this._convert3Dto2D(new Point3d(this.xMin, this.yMin, this.zMin)); xMax2d = this._convert3Dto2D(new Point3d(this.xMax, this.yMin, this.zMin)); - ctx.strokeStyle = this.colorAxis; + ctx.strokeStyle = this.axisColor; ctx.beginPath(); ctx.moveTo(xMin2d.x, xMin2d.y); ctx.lineTo(xMax2d.x, xMax2d.y); @@ -7795,7 +7816,7 @@ return /******/ (function(modules) { // webpackBootstrap // line at ymax xMin2d = this._convert3Dto2D(new Point3d(this.xMin, this.yMax, this.zMin)); xMax2d = this._convert3Dto2D(new Point3d(this.xMax, this.yMax, this.zMin)); - ctx.strokeStyle = this.colorAxis; + ctx.strokeStyle = this.axisColor; ctx.beginPath(); ctx.moveTo(xMin2d.x, xMin2d.y); ctx.lineTo(xMax2d.x, xMax2d.y); @@ -7806,7 +7827,7 @@ return /******/ (function(modules) { // webpackBootstrap // line at xMin from = this._convert3Dto2D(new Point3d(this.xMin, this.yMin, this.zMin)); to = this._convert3Dto2D(new Point3d(this.xMin, this.yMax, this.zMin)); - ctx.strokeStyle = this.colorAxis; + ctx.strokeStyle = this.axisColor; ctx.beginPath(); ctx.moveTo(from.x, from.y); ctx.lineTo(to.x, to.y); @@ -7814,7 +7835,7 @@ return /******/ (function(modules) { // webpackBootstrap // line at xMax from = this._convert3Dto2D(new Point3d(this.xMax, this.yMin, this.zMin)); to = this._convert3Dto2D(new Point3d(this.xMax, this.yMax, this.zMin)); - ctx.strokeStyle = this.colorAxis; + ctx.strokeStyle = this.axisColor; ctx.beginPath(); ctx.moveTo(from.x, from.y); ctx.lineTo(to.x, to.y); @@ -7837,7 +7858,7 @@ return /******/ (function(modules) { // webpackBootstrap ctx.textAlign = 'left'; ctx.textBaseline = 'middle'; } - ctx.fillStyle = this.colorAxis; + ctx.fillStyle = this.axisColor; ctx.fillText(xLabel, text.x, text.y); } @@ -7858,7 +7879,7 @@ return /******/ (function(modules) { // webpackBootstrap ctx.textAlign = 'left'; ctx.textBaseline = 'middle'; } - ctx.fillStyle = this.colorAxis; + ctx.fillStyle = this.axisColor; ctx.fillText(yLabel, text.x, text.y); } @@ -7872,7 +7893,7 @@ return /******/ (function(modules) { // webpackBootstrap text = this._convert3Dto2D(new Point3d(xText, yText, zText)); ctx.textAlign = 'right'; ctx.textBaseline = 'middle'; - ctx.fillStyle = this.colorAxis; + ctx.fillStyle = this.axisColor; ctx.fillText(zLabel, text.x - offset, text.y); } }; @@ -7932,6 +7953,9 @@ return /******/ (function(modules) { // webpackBootstrap v, zAvg; + ctx.lineJoin = 'round'; + ctx.lineCap = 'round'; + if (this.dataPoints === undefined || this.dataPoints.length <= 0) return; // TODO: throw exception? // calculate the translations and screen position of all points @@ -7991,15 +8015,14 @@ return /******/ (function(modules) { // webpackBootstrap } else { v = 1; fillStyle = this._hsv2rgb(h, s, v); - strokeStyle = this.colorAxis; + strokeStyle = this.axisColor; } } else { fillStyle = 'gray'; - strokeStyle = this.colorAxis; + strokeStyle = this.axisColor; } - lineWidth = 0.5; - ctx.lineWidth = lineWidth; + ctx.lineWidth = this._getStrokeWidth(point); ctx.fillStyle = fillStyle; ctx.strokeStyle = strokeStyle; ctx.beginPath(); @@ -8019,20 +8042,12 @@ return /******/ (function(modules) { // webpackBootstrap right = this.dataPoints[i].pointRight; top = this.dataPoints[i].pointTop; - if (point !== undefined) { - if (this.showPerspective) { - lineWidth = 2 / -point.trans.z; - } else { - lineWidth = 2 * -(this.eye.z / this.camera.getArmLength()); - } - } - if (point !== undefined && right !== undefined) { // calculate Hue from the current value. At zMin the hue is 240, at zMax the hue is 0 zAvg = (point.point.z + right.point.z) / 2; h = (1 - (zAvg - this.zMin) * this.scale.z / this.verticalRatio) * 240; - ctx.lineWidth = lineWidth; + ctx.lineWidth = this._getStrokeWidth(point) * 2; ctx.strokeStyle = this._hsv2rgb(h, 1, 1); ctx.beginPath(); ctx.moveTo(point.screen.x, point.screen.y); @@ -8045,7 +8060,7 @@ return /******/ (function(modules) { // webpackBootstrap zAvg = (point.point.z + top.point.z) / 2; h = (1 - (zAvg - this.zMin) * this.scale.z / this.verticalRatio) * 240; - ctx.lineWidth = lineWidth; + ctx.lineWidth = this._getStrokeWidth(point) * 2; ctx.strokeStyle = this._hsv2rgb(h, 1, 1); ctx.beginPath(); ctx.moveTo(point.screen.x, point.screen.y); @@ -8056,6 +8071,18 @@ return /******/ (function(modules) { // webpackBootstrap } }; + Graph3d.prototype._getStrokeWidth = function (point) { + if (point !== undefined) { + if (this.showPerspective) { + return 1 / -point.trans.z * this.dataColor.strokeWidth; + } else { + return -(this.eye.z / this.camera.getArmLength()) * this.dataColor.strokeWidth; + } + } + + return this.dataColor.strokeWidth; + }; + /** * Draw all datapoints as dots. * This function can be used when the style is 'dot' or 'dot-line' @@ -8095,7 +8122,7 @@ return /******/ (function(modules) { // webpackBootstrap //var from = this._convert3Dto2D(new Point3d(point.point.x, point.point.y, this.zMin)); var from = this._convert3Dto2D(point.bottom); ctx.lineWidth = 1; - ctx.strokeStyle = this.colorGrid; + ctx.strokeStyle = this.gridColor; ctx.beginPath(); ctx.moveTo(from.x, from.y); ctx.lineTo(point.screen.x, point.screen.y); @@ -8127,8 +8154,8 @@ return /******/ (function(modules) { // webpackBootstrap color = this._hsv2rgb(hue, 1, 1); borderColor = this._hsv2rgb(hue, 1, 0.8); } else if (this.style === Graph3d.STYLE.DOTSIZE) { - color = this.colorDot; - borderColor = this.colorDotBorder; + color = this.dataColor.fill; + borderColor = this.dataColor.stroke; } else { // calculate Hue from the current value. At zMin the hue is 240, at zMax the hue is 0 hue = (1 - (point.point.z - this.zMin) * this.scale.z / this.verticalRatio) * 240; @@ -8137,7 +8164,7 @@ return /******/ (function(modules) { // webpackBootstrap } // draw the circle - ctx.lineWidth = 1; + ctx.lineWidth = this._getStrokeWidth(point); ctx.strokeStyle = borderColor; ctx.fillStyle = color; ctx.beginPath(); @@ -8176,6 +8203,9 @@ return /******/ (function(modules) { // webpackBootstrap }; this.dataPoints.sort(sortDepth); + ctx.lineJoin = 'round'; + ctx.lineCap = 'round'; + // draw the datapoints as bars var xWidth = this.xBarWidth / 2; var yWidth = this.yBarWidth / 2; @@ -8190,8 +8220,8 @@ return /******/ (function(modules) { // webpackBootstrap color = this._hsv2rgb(hue, 1, 1); borderColor = this._hsv2rgb(hue, 1, 0.8); } else if (this.style === Graph3d.STYLE.BARSIZE) { - color = this.colorDot; - borderColor = this.colorDotBorder; + color = this.dataColor.fill; + borderColor = this.dataColor.stroke; } else { // calculate Hue from the current value. At zMin the hue is 240, at zMax the hue is 0 hue = (1 - (point.point.z - this.zMin) * this.scale.z / this.verticalRatio) * 240; @@ -8247,7 +8277,7 @@ return /******/ (function(modules) { // webpackBootstrap }); // draw the ordered surfaces - ctx.lineWidth = 1; + ctx.lineWidth = this._getStrokeWidth(point); ctx.strokeStyle = borderColor; ctx.fillStyle = color; // NOTE: we start at j=2 instead of j=0 as we don't need to draw the two surfaces at the backside @@ -8291,20 +8321,20 @@ return /******/ (function(modules) { // webpackBootstrap if (this.dataPoints.length > 0) { point = this.dataPoints[0]; - ctx.lineWidth = 1; // TODO: make customizable - ctx.strokeStyle = 'blue'; // TODO: make customizable + ctx.lineWidth = this._getStrokeWidth(point); + ctx.lineJoin = 'round'; + ctx.lineCap = 'round'; + ctx.strokeStyle = this.dataColor.stroke; ctx.beginPath(); ctx.moveTo(point.screen.x, point.screen.y); - } - // draw the datapoints as colored circles - for (i = 1; i < this.dataPoints.length; i++) { - point = this.dataPoints[i]; - ctx.lineTo(point.screen.x, point.screen.y); - } + // draw the datapoints as colored circles + for (i = 1; i < this.dataPoints.length; i++) { + point = this.dataPoints[i]; + ctx.lineTo(point.screen.x, point.screen.y); + } - // finish the line - if (this.dataPoints.length > 0) { + // finish the line ctx.stroke(); } }; diff --git a/dist/vis.map b/dist/vis.map index ac4b1507..e1e66822 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","uuid","isNumber","object","Number","recursiveDOMDelete","DOMobject","hasChildNodes","firstChild","removeChild","giveRange","min","max","total","value","scale","Math","isString","String","isDate","Date","match","ASPDateRegex","exec","isNaN","parse","randomUUID","v4","assignAllKeys","obj","prop","hasOwnProperty","fillIfDefined","a","b","allowDeletion","undefined","arguments","protoExtend","i","length","other","extend","selectiveExtend","props","Array","isArray","selectiveDeepExtend","TypeError","constructor","Object","deepExtend","selectiveNotDeepExtend","indexOf","push","equalArray","len","convert","type","Boolean","valueOf","isMoment","toDate","getType","toISOString","copyAndExtendArray","arr","newValue","newArr","copyArray","getAbsoluteLeft","elem","getBoundingClientRect","left","getAbsoluteTop","top","addClassName","className","classes","split","join","removeClassName","index","splice","forEach","callback","toArray","array","updateProperty","key","addEventListener","element","action","listener","useCapture","navigator","userAgent","attachEvent","removeEventListener","detachEvent","preventDefault","event","window","returnValue","getTarget","target","srcElement","nodeType","parentNode","hasParent","parent","e","option","asBoolean","defaultValue","asNumber","asString","asSize","asElement","hexToRGB","hex","shorthandRegex","replace","r","g","result","parseInt","overrideOpacity","color","opacity","rgb","substr","RGBToHex","red","green","blue","toString","slice","parseColor","isValidRGB","map","isValidHex","hsv","hexToHSV","lighterColorHSV","h","s","v","darkerColorHSV","darkerColorHex","HSVToHex","lighterColorHex","background","border","highlight","hover","RGBToHSV","minRGB","maxRGB","d","hue","saturation","cssUtil","cssText","styles","style","trim","parts","keys","addCssText","currentStyles","newStyles","removeCssText","removeStyles","HSVToRGB","floor","f","q","t","isOk","test","isValidRGBA","rgba","selectiveBridgeObject","fields","referenceObject","objectTo","create","bridgeObject","mergeOptions","mergeTarget","enabled","binarySearchCustom","orderedItems","searchFunction","field","field2","maxIterations","iteration","low","high","middle","item","searchResult","binarySearchValue","sidePreference","prevValue","nextValue","easingFunctions","linear","easeInQuad","easeOutQuad","easeInOutQuad","easeInCubic","easeOutCubic","easeInOutCubic","easeInQuart","easeOutQuart","easeInOutQuart","easeInQuint","easeOutQuint","easeInOutQuint","global","utils_hooks__hooks","hookCallback","apply","setHookCallback","prototype","fn","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","val","_isAMomentObject","_i","_f","_l","_tzm","_isUTC","_offset","_locale","momentProperties","Moment","config","updateInProgress","updateOffset","toInt","argumentForCoercion","coercedNumber","isFinite","ceil","compareArrays","array1","array2","dontConvert","lengthDiff","abs","diffs","Locale","normalizeLocale","toLowerCase","chooseLocale","names","j","next","loadLocale","name","oldLocale","locales","globalLocale","_abbr","code","locale_locales__getSetGlobalLocale","values","data","locale_locales__getLocale","defineLocale","abbr","set","addUnitAlias","unit","shorthand","lowerCase","aliases","normalizeUnits","units","normalizeObjectUnits","inputObject","normalizedProp","normalizedInput","makeGetSet","keepTime","get_set__set","get_set__get","mom","getSet","zeroFill","number","targetLength","forceSign","output","sign","addFormatToken","token","padded","ordinal","func","formatTokenFunctions","localeData","removeFormattingTokens","makeFormatFunction","formattingTokens","Function","formatMoment","isValid","expandFormat","formatFunctions","invalidDate","replaceLongDateFormatTokens","longDateFormat","localFormattingTokens","lastIndex","addRegexToken","regex","strictRegex","regexes","isStrict","getParseRegexForToken","RegExp","unescapeFormat","matched","p1","p2","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","y","M","ms","setFullYear","createUTCDate","setUTCFullYear","daysInYear","isLeapYear","getIsLeapYear","weekOfYear","firstDayOfWeek","firstDayOfWeekOfYear","adjustedMoment","end","daysToDayOfWeek","day","local__createLocal","add","week","dayOfYear","localeWeek","_week","dow","doy","localeFirstDayOfWeek","localeFirstDayOfYear","getSetWeek","getSetISOWeek","dayOfYearFromWeeks","weekday","daysToAdd","getUTCDay","getSetDayOfYear","round","clone","startOf","defaults","currentDateArray","now","_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","args","Duration","duration","years","quarters","quarter","weeks","days","hours","minutes","seconds","milliseconds","_milliseconds","_days","_data","_bubble","isDuration","offset","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","base","isAfter","isBefore","createAdder","direction","period","dur","tmp","isAdding","moment_calendar__calendar","time","sod","calendar","inputMs","endOf","isBetween","isSame","absFloor","asFloat","delta","that","zoneDelta","monthDiff","anchor2","adjust","wholeMonthDiff","anchor","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","toUpperCase","_invalidDate","_ordinal","preParsePostFormat","relative__relativeTime","isFuture","_relativeTime","pastFuture","locale_set__set","_ordinalParseLenient","_ordinalParse","source","lists__get","setter","list","count","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","threshold","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","get","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","node","_nodeId","n","rnds","random","rng","_rng","globalVar","crypto","getRandomValues","_rnds8","Uint8Array","_rnds","_seedBytes","prepareElements","JSONcontainer","elementType","redundant","used","cleanupElements","getSVGElement","svgContainer","shift","document","createElementNS","appendChild","getDOMElement","DOMContainer","insertBefore","createElement","drawPoint","x","group","labelObj","point","drawPoints","setAttributeNS","size","label","xOffset","yOffset","content","textContent","drawBar","width","height","rect","_options","_fieldId","fieldId","_type","_subscribers","setOptions","queue","_queue","destroy","on","subscribers","subscribe","off","filter","unsubscribe","_trigger","params","senderId","concat","subscriber","addedIds","me","_addItem","update","updatedIds","updatedData","addOrUpdate","_updateItem","ids","firstType","returnType","allowedValues","itemId","_getItem","order","_sort","_filterFields","getIds","getDataSet","mappedItems","filteredItem","sort","av","bv","remove","removedId","removedIds","_remove","clear","maxField","itemField","minField","distinct","fieldType","exists","types","raw","converted","JSON","stringify","delay","Infinity","_timeout","_extended","_flushIfNeeded","flush","methods","original","method","context","entry","clearTimeout","setTimeout","_ids","_onEvent","setData","refresh","newIds","added","removed","viewOptions","getArguments","defaultFilter","dataSet","updated","container","SyntaxError","containerElement","margin","defaultXCenter","defaultYCenter","xLabel","yLabel","zLabel","passValueFn","xValueLabel","yValueLabel","zValueLabel","filterLabel","legendLabel","STYLE","DOT","showPerspective","showGrid","keepAspectRatio","showShadow","showGrayBottom","showTooltip","verticalRatio","animationInterval","animationPreload","camera","eye","dataTable","dataPoints","colX","colY","colZ","colValue","colFilter","xMin","xStep","xMax","yMin","yStep","yMax","zMin","zStep","zMax","valueMin","valueMax","xBarWidth","yBarWidth","colorAxis","colorGrid","colorDot","colorDotBorder","getMouseX","clientX","targetTouches","getMouseY","clientY","Emitter","_setScale","z","xCenter","yCenter","zCenter","setArmLocation","_convert3Dto2D","point3d","translation","_convertPointToTranslation","_convertTranslationToScreen","ax","ay","az","cx","getCameraLocation","cy","cz","sinTx","sin","getCameraRotation","cosTx","cos","sinTy","cosTy","sinTz","cosTz","dx","dy","dz","bx","by","ex","ey","ez","getArmLength","xcenter","frame","canvas","clientWidth","ycenter","_setBackgroundColor","backgroundColor","fill","stroke","strokeWidth","borderColor","borderWidth","borderStyle","BAR","BARCOLOR","BARSIZE","DOTLINE","DOTCOLOR","DOTSIZE","GRID","LINE","SURFACE","_getStyleNumber","styleName","_determineColumnIndexes","getNumberOfColumns","getNumberOfRows","counter","column","getDistinctValues","distinctValues","getColumnRange","minMax","_dataInitialize","rawData","_onChange","dataFilter","setOnLoadCallback","redraw","withBars","defaultXBarWidth","dataX","defaultYBarWidth","dataY","xRange","defaultXMin","defaultXMax","defaultXStep","yRange","defaultYMin","defaultYMax","defaultYStep","zRange","defaultZMin","defaultZMax","defaultZStep","valueRange","defaultValueMin","defaultValueMax","_getDataPoints","sortNumber","dataMatrix","xIndex","yIndex","trans","screen","bottom","pointRight","pointTop","pointCross","position","noCanvas","fontWeight","padding","innerHTML","onmousedown","_onMouseDown","ontouchstart","_onTouchStart","onmousewheel","_onWheel","ontooltip","_onTooltip","onkeydown","setSize","_resizeCanvas","clientHeight","animationStart","slider","play","animationStop","stop","_resizeCenter","setCameraPosition","pos","horizontal","vertical","setArmRotation","distance","setArmLength","getCameraPosition","getArmRotation","_readData","_redrawFilter","animationAutoStart","cameraPosition","styleNumber","tooltip","showAnimationControls","_redrawSlider","_redrawClear","_redrawAxis","_redrawDataGrid","_redrawDataLine","_redrawDataBar","_redrawDataDot","_redrawInfo","_redrawLegend","ctx","getContext","clearRect","widthMin","widthMax","dotSize","right","lineWidth","font","ymin","ymax","_hsv2rgb","strokeStyle","beginPath","moveTo","lineTo","strokeRect","fillStyle","closePath","gridLineLen","step","start","getCurrent","textAlign","textBaseline","fillText","visible","setValues","setPlayInterval","onchange","getIndex","selectValue","setOnChangeCallback","lineStyle","getLabel","getSelectedValue","prettyStep","text","xText","yText","zText","xMin2d","xMax2d","gridLenX","gridLenY","textMargin","armAngle","H","S","V","R","G","B","C","Hi","X","cross","topSideVisible","zAvg","transBottom","dist","sortDepth","aDiff","bDiff","crossproduct","crossProduct","radius","arc","PI","surface","corners","xWidth","yWidth","surfaces","center","avg","transCenter","leftButtonDown","_onMouseUp","which","button","touchDown","startMouseX","startMouseY","startStart","startEnd","startArmRotation","cursor","onmousemove","_onMouseMove","onmouseup","diffX","diffY","horizontalNew","verticalNew","snapAngle","snapValue","parameters","emit","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","sqrt","line","dot","dom","borderRadius","boxShadow","borderLeft","contentWidth","offsetWidth","contentHeight","offsetHeight","lineHeight","dotWidth","dotHeight","mixin","_callbacks","once","self","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","interval","clearInterval","getPlayInterval","setPlayLoop","doLoop","onChange","indexToLeft","startClientX","startSlideX","leftToIndex","_start","_end","_step","precision","_current","setRange","setStep","calculatePrettyStep","log10","log","LN10","step1","pow","step2","step5","toPrecision","getStep","groups","forthArgument","defaultOptions","autoResize","orientation","axis","maxHeight","minHeight","_create","body","domProps","emitter","bind","hiddenDates","getScale","timeAxis","toScreen","_toScreen","toGlobalScreen","_toGlobalScreen","toTime","_toTime","toGlobalTime","_toGlobalTime","range","timeAxis2","currentTime","itemSet","itemsData","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","itemData","_this","getDataRange","minItem","maxItem","factor","lhs","rhs","getStart","getEnd","show","getWidthLeft","getWidthRight","dataset","centerContainer","itemFromTarget","groupFromTarget","customTime","customTimeFromTarget","snap","snappedTime","what","foreground","labelSet","groupId","pageX","srcEvent","pageY","showCurrentTime","backgroundVertical","warned","title","current","substring","conversion","currentTimeTimer","setCurrentTime","getCurrentTime","_isResized","resized","_previousWidth","_previousHeight","propagating","__WEBPACK_AMD_DEFINE_FACTORY__","__WEBPACK_AMD_DEFINE_ARRAY__","__WEBPACK_AMD_DEFINE_RESULT__","_firstTarget","events","propagatedHandler","_handled","stopped","stopPropagation","firstTarget","_handlers","Manager","PropagatingHammer","o","wrapper","pointerType","isFirst","handler","eventType","exportName","setTimeoutContext","timeout","bindFn","invokeArrayArg","arg","each","iterator","dest","src","merge","inherit","child","properties","childP","baseP","_super","boolOrFn","TYPE_FUNCTION","ifUndefined","val1","val2","addEventListeners","splitStr","removeEventListeners","inStr","str","find","inArray","findByKey","uniqueArray","results","prefixed","property","prefix","camelProp","VENDOR_PREFIXES","uniqueId","_uniqueId","getWindowForElement","doc","ownerDocument","defaultView","parentWindow","Input","manager","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","getCenter","timeStamp","deltaTime","angle","getAngle","getDistance","computeDeltaXY","offsetDirection","getDirection","deltaX","deltaY","rotation","getRotation","computeIntervalInputData","offsetDelta","prevDelta","velocity","velocityX","velocityY","last","lastInterval","COMPUTE_INTERVAL","getVelocity","DIRECTION_NONE","DIRECTION_LEFT","DIRECTION_RIGHT","DIRECTION_UP","DIRECTION_DOWN","PROPS_XY","atan2","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","changed","changedTouches","TOUCH_TARGET_EVENTS","targetIds","getTouches","allTouches","INPUT_MOVE","identifier","changedTargetTouches","touch","mouse","TouchAction","cleanTouchActions","actions","TOUCH_ACTION_NONE","hasPanX","TOUCH_ACTION_PAN_X","hasPanY","TOUCH_ACTION_PAN_Y","TOUCH_ACTION_MANIPULATION","TOUCH_ACTION_AUTO","Recognizer","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","recognizers","preset","handlers","touchAction","toggleCssProps","recognizeWith","requireFailure","cssProps","triggerDomEvent","gestureEvent","createEvent","initEvent","gesture","dispatchEvent","TEST_ELEMENT","MOBILE_REGEX","INPUT_TYPE_TOUCH","INPUT_TYPE_PEN","INPUT_TYPE_MOUSE","INPUT_TYPE_KINECT","DIRECTION_HORIZONTAL","DIRECTION_VERTICAL","DIRECTION_ALL","MOUSE_INPUT_MAP","mousedown","mousemove","mouseup","POINTER_INPUT_MAP","pointerdown","pointermove","pointerup","pointercancel","pointerout","IE10_POINTER_TYPE_ENUM",2,3,4,5,"MSPointerEvent","removePointer","eventTypeNormalized","isTouch","storeIndex","pointerId","SINGLE_TOUCH_INPUT_MAP","touchstart","touchmove","touchend","touchcancel","TOUCH_INPUT_MAP","inputEvent","inputData","isMouse","PREFIXED_TOUCH_ACTION","NATIVE_TOUCH_ACTION","TOUCH_ACTION_COMPUTE","compute","getTouchAction","preventDefaults","prevented","hasNone","preventSrc","STATE_RECOGNIZED","STATE_FAILED","dropRecognizeWith","dropRequireFailure","hasRequireFailures","canRecognizeWith","withState","tryEmit","canEmit","inputDataClone","process","reset","attrTest","optionPointers","isRecognized","directionTest","hasMoved","inOut","validPointers","validMovement","validTime","taps","posThreshold","validTouchTime","failTimeout","validInterval","validMultiTap","tapCount","VERSION","domEvents","userSelect","touchSelect","touchCallout","contentZooming","userDrag","tapHighlightColor","STOP","FORCED_STOP","force","curRecognizer","existing","Tap","Pan","Swipe","Pinch","Rotate","Press","__webpack_amd_options__","deltaDifference","scaleOffset","startToFront","endToFront","moveable","zoomable","zoomMin","zoomMax","animationTimer","_onDragStart","_onDrag","_onDragEnd","_onMouseWheel","_onTouch","_onPinch","validateDirection","getPointer","byUser","finalStart","finalEnd","_cancelAnimation","initStart","initEnd","easingName","easingFunction","initTime","anyChanged","dragging","ease","done","_applyRange","updateHiddenDates","newStart","newEnd","getRange","totalHidden","previousDelta","allowDragging","getHiddenDurationBetween","diffRange","safeStart","snapAwayFromHidden","safeEnd","pointer","pointerDate","_pointerToDate","zoom","centerDate","hiddenDuration","hiddenDurationBefore","getHiddenDurationBefore","hiddenDurationAfter","move","onTouch","isTouching","onRelease","isReleasing","offTouch","offRelease","convertHiddenOptions","repeat","dateItem","totalRange","pixelTime","startDate","endDate","runUntil","dayOffset","removeDuplicates","startHidden","isHidden","endHidden","rangeStart","rangeEnd","hidden","safeDates","printDates","stepOverHiddenDates","timeStep","previousTime","stepInHidden","currentValue","switchedYear","switchedMonth","switchedDay","correctTimeForHidden","totalDuration","partialDuration","accumulatedHiddenDuration","getAccumulatedHiddenDuration","newTime","timeOffset","requiredDuration","previousPoint","correctionEnabled","hammerUtil","Activator","onMouseWheel","isActive","backgroundHorizontal","leftContainer","rightContainer","shadowTop","shadowBottom","shadowTopLeft","shadowBottomLeft","shadowTopRight","shadowBottomRight","_redrawTimer","scrollTop","scrollTopMin","customTimes","redrawCount","clickToUse","activator","_initAutoResize","component","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","editable","updateTime","updateGroup","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","dirty","displayed","hide","unselect","select","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","selected","_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","_moveToGroup","changes","shiftKey","oldSelection","newSelection","_getItemRange","_item","itemSetFromTarget","subgroups","subgroupIndex","subgroupOrderer","subgroupOrder","byStart","byEnd","checkRangedItems","inner","marker","Element","getLabelWidth","markerHeight","lastMarkerHeight","limitSize","repositionX","customOrderedItems","_updateVisibleItems","nostack","_calculateHeight","offsetTop","repositionY","resetSubgroups","setParent","orderSubgroups","_checkIfVisible","sortArray","sortField","removeFromDataSet","startArray","orderByStart","orderByEnd","oldVisibleItems","visibleItemsLookup","lowerBound","upperBound","_checkIfVisibleWithReference","initialPosByStart","_traceVisible","initialPosByEnd","initialPos","breakCondition","isVisible","EPSILON","aTime","bTime","iMax","collidingItem","jj","collision","newTop","baseClassName","_updateContents","_updateTitle","_updateDataAttributes","_updateStyle","getComputedStyle","maxWidth","_repaintDeleteButton","_repaintDragLeft","_repaintDragRight","contentLeft","parentWidth","boxWidth","groupChanged","deleteButton","template","_contentToString","removeAttribute","dataAttributes","attributes","setAttribute","outerHTML","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","marginLeft","onTop","itemSubgroup","totalHeight","newHeight","lines","majorTexts","minorTexts","lineTop","showMinorLabels","showMajorLabels","parentChanged","_calculateCharSize","minorLabelHeight","minorCharHeight","majorLabelHeight","majorCharHeight","minorLineHeight","minorLineWidth","majorLineHeight","majorLineWidth","foregroundNextSibling","nextSibling","backgroundNextSibling","_repaintLabels","timeLabelsize","minorCharWidth","cur","prevLine","xPrev","xFirstMajorLabel","_repaintMinorText","_repaintMajorText","_repaintMajorLine","_repaintMinorLine","leftTime","leftText","widthText","majorCharWidth","pop","createTextNode","childNodes","nodeValue","measureCharMinor","measureCharMajor","overlay","_onTapOverlay","onClick","_hasParent","deactivate","keycharm","escListener","activate","display","unbind","_exportFunctions","_bound","keydown","keyup","_keys","fromCharCode","down","handleEvent","up","keyCode","bound","bindAll","getKey","newBindings","eventParams","drag","_interopRequireDefault","__esModule","default","_classCallCheck","instance","Constructor","defineProperty","_createClass","defineProperties","descriptor","enumerable","configurable","writable","protoProps","staticProps","_ColorPicker","_ColorPicker2","parentModule","defaultContainer","pixelRatio","changedOptions","allowCreation","showButton","moduleOptions","domElements","colorPicker","_clean","_handleObject","_makeItem","_makeHeader","generateButton","_printOptions","onmouseover","onmouseout","optionsContainer","_push","insertTo","path","_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","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","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","Groups","defaultIndex","groupsArray","groupIndex","defaultGroups","useDefaultGroups","optionFields","groupName","groupname","_componentsNode","_componentsNode2","_componentsSharedLabel","_componentsSharedLabel2","NodesHandler","nodesListeners","borderWidthSelected","brokenImage","fixed","face","strokeColor","image","level","mass","scaling","maxVisible","drawThreshold","customScalingFunction","shadow","shape","parseOptions","updateShape","updateLabelModule","_reset","doNotEmit","oldNodesData","newNodes","positionInitially","changedData","dataChanged","constructorClass","dataArray","boundingBox","nodeList","nodeObj","toId","fromId","edgeList","_sharedLabel","_sharedLabel2","_nodesShapesBox","_nodesShapesBox2","_nodesShapesCircle","_nodesShapesCircle2","_nodesShapesCircularImage","_nodesShapesCircularImage2","_nodesShapesDatabase","_nodesShapesDatabase2","_nodesShapesDiamond","_nodesShapesDiamond2","_nodesShapesDot","_nodesShapesDot2","_nodesShapesEllipse","_nodesShapesEllipse2","_nodesShapesIcon","_nodesShapesIcon2","_nodesShapesImage","_nodesShapesImage2","_nodesShapesSquare","_nodesShapesSquare2","_nodesShapesStar","_nodesShapesStar2","_nodesShapesText","_nodesShapesText2","_nodesShapesTriangle","_nodesShapesTriangle2","_nodesShapesTriangleDown","_nodesShapesTriangleDown2","Node","imagelist","grouplist","globalOptions","baseSize","baseFontSize","predefinedPosition","labelModule","status","groupObj","imageObj","load","distanceToBorder","sizeDiff","fontDiff","updateBoundingBox","resize","parentOptions","newOptions","parsedColor","_slicedToArray","Symbol","_arr","_n","_e","_s","Label","pointToSelf","yLine","labelDirty","baseline","viewFontSize","calculateLabelSize","_drawBackground","_drawText","lineMargin","fontSize","_getColor2","_getColor","_getColor22","fontColor","_setAlignment2","_setAlignment","_setAlignment22","lineJoin","lineCount","strokeText","_processLabel","measureText","newOptionsArray","_inherits","subClass","superClass","__proto__","_get","_x","_x2","_x3","_again","receiver","desc","getOwnPropertyDescriptor","getPrototypeOf","_utilNodeBase","_utilNodeBase2","Box","_NodeBase","textSize","getTextSize","selectionLineWidth","roundRect","enableShadow","disableShadow","NodeBase","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY","_utilCircleImageBase","_utilCircleImageBase2","Circle","_CircleImageBase","diameter","_drawRawCircle","CircleImageBase","labelOffset","imageLoaded","ratio","networkScaleInv","globalAlpha","drawImage","labelDimensions","CircularImage","_swapToImageResizeWhenImageLoaded","_resizeImage","save","clip","_drawImageAtPosition","restore","_drawImageLabel","_distanceToBorder","Database","database","_utilShapeBase","_utilShapeBase2","Diamond","_ShapeBase","_resizeShape","_drawShape","ShapeBase","sizeMultiplier","Dot","Ellipse","ellipse","Icon","_icon","iconTextSpacing","Image","Square","Star","Text","Triangle","TriangleDown","_componentsEdge","_componentsEdge2","EdgesHandler","edgesListeners","arrows","scaleFactor","dashes","hoverWidth","selectionWidth","selfReferenceSize","smooth","roundness","emitChange","edgeData","edgeOptions","reconnectEdges","markAllEdgesAsDirty","updateEdgeType","oldEdgesData","edgesData","oldEdge","disconnect","showInternalIds","connect","via","supportNodes","edgeType","colorDirty","_edgesBezierEdgeDynamic","_edgesBezierEdgeDynamic2","_edgesBezierEdgeStatic","_edgesBezierEdgeStatic2","_edgesStraightEdge","_edgesStraightEdge2","Edge","baseWidth","connected","_setInteractionWidths","changeInType","cleanup","togglePhysics","attachEdge","detachEdge","widthDiff","drawLine","drawArrows","drawLabel","viaNode","drawArrowHead","node1","node2","getPoint","translate","_rotateForLabelAlignment","_pointOnCircle","xFrom","yFrom","xTo","yTo","xObj","yObj","getDistanceToEdge","angleInDegrees","rotate","percentage","colorsDefined","_utilBezierEdgeBase","_utilBezierEdgeBase2","BezierEdgeDynamic","_BezierEdgeBase","setupSupportNode","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","lineCap","pattern","setLineDash","lineDashOffset","_getCircleData3","_getCircleData32","dashedLine","_getCircleData4","_getCircleData42","_findBorderPosition","_findBorderPositionCircle","_getCircleData5","_getCircleData52","colorOptions","grd","createLinearGradient","fromColor","toColor","addColorStop","_getDistanceToEdge","_getCircleData6","_getCircleData62","px","py","something","u","arrowPos","guideOffset","findBorderPosition","guidePos","arrow","_angle","_getCircleData7","_getCircleData72","_length","_x5","_x6","BezierEdgeStatic","pi","originalAngle","myAngle","_utilEdgeBase","_utilEdgeBase2","StraightEdge","edgeSegmentLength","toBorderDist","toBorderPoint","borderPos","_componentsPhysicsBarnesHutSolver","_componentsPhysicsBarnesHutSolver2","_componentsPhysicsRepulsionSolver","_componentsPhysicsRepulsionSolver2","_componentsPhysicsHierarchicalRepulsionSolver","_componentsPhysicsHierarchicalRepulsionSolver2","_componentsPhysicsSpringSolver","_componentsPhysicsSpringSolver2","_componentsPhysicsHierarchicalSpringSolver","_componentsPhysicsHierarchicalSpringSolver2","_componentsPhysicsCentralGravitySolver","_componentsPhysicsCentralGravitySolver2","_componentsPhysicsFA2BasedRepulsionSolver","_componentsPhysicsFA2BasedRepulsionSolver2","_componentsPhysicsFA2BasedCentralGravitySolver","_componentsPhysicsFA2BasedCentralGravitySolver2","PhysicsEngine","physicsBody","physicsNodeIndices","physicsEdgeIndices","forces","velocities","physicsEnabled","simulationInterval","requiresTimeout","previousStates","freezeCache","renderTimer","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","nodesArray","average","averageSquared","hubCounter","largestHub","letiance","standardDeviation","hubThreshold","_Node2","_Node3","Cluster","_Node","requestAnimationFrame","mozRequestAnimationFrame","webkitRequestAnimationFrame","msRequestAnimationFrame","CanvasRenderer","redrawRequested","renderingActive","renderRequests","allowRedrawRequests","hideEdgesOnDrag","hideNodesOnDrag","_determineBrowserMethod","_resizeNodes","_requestRedraw","_startRendering","cancelAnimationFrame","_renderStep","_drawEdges","_drawNodes","controlNodesActive","_drawControlNodes","alwaysShow","topLeft","bottomRight","viewableArea","isSelected","isBoundingBoxOverlappingWith","browserType","Canvas","resizeTimer","resizeFunction","hammerFrame","_cleanUp","tabIndex","_prepareValue","emitEvent","oldWidth","oldHeight","_XconvertCanvasToDOM","_YconvertCanvasToDOM","_XconvertDOMtoCanvas","_YconvertDOMtoCanvas","View","animationSpeed","renderRefreshRate","animationEasingFunction","easingTime","sourceScale","targetScale","sourceTranslation","targetTranslation","lockedOnNodeId","lockedOnNodeOffset","touchTime","specificNodes","zoomLevel","initialZoom","positionDefined","_getRange","numberOfNodes","yDistance","xZoomLevel","yZoomLevel","_findCenter","animationOptions","nodePosition","lockedOnNode","animateView","locked","_transitionRedraw","viewCenter","distanceFromCenter","_lockedRedraw","finished","_componentsNavigationHandler","_componentsNavigationHandler2","_componentsPopup","_componentsPopup2","InteractionHandler","navigationHandler","popup","popupObj","popupTimer","dragNodes","dragView","keyboard","speed","bindToWindow","navigationButtons","tooltipDelay","zoomView","pinched","checkSelectionChanges","_generateClickEvent","previouslySelectedEdgeCount","_getSelectedEdgeCount","previouslySelectedNodeCount","_getSelectedNodeCount","previousSelection","selectAdditionalOnPoint","selectOnPoint","selectedEdgesCount","selectedNodesCount","currentSelection","_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","_stopMovement","configureKeyboardBindings","loadNavigationElements","cleanNavigation","navigationDOM","navigationDivs","navigationDivActions","_fit","bindToRedraw","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","isFixed","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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,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAE3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAE3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAE3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAA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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","uuid","isNumber","object","Number","recursiveDOMDelete","DOMobject","hasChildNodes","firstChild","removeChild","giveRange","min","max","total","value","scale","Math","isString","String","isDate","Date","match","ASPDateRegex","exec","isNaN","parse","randomUUID","v4","assignAllKeys","obj","prop","hasOwnProperty","fillIfDefined","a","b","allowDeletion","undefined","arguments","protoExtend","i","length","other","extend","selectiveExtend","props","Array","isArray","selectiveDeepExtend","TypeError","constructor","Object","deepExtend","selectiveNotDeepExtend","indexOf","push","equalArray","len","convert","type","Boolean","valueOf","isMoment","toDate","getType","toISOString","copyAndExtendArray","arr","newValue","newArr","copyArray","getAbsoluteLeft","elem","getBoundingClientRect","left","getAbsoluteTop","top","addClassName","className","classes","split","join","removeClassName","index","splice","forEach","callback","toArray","array","updateProperty","key","addEventListener","element","action","listener","useCapture","navigator","userAgent","attachEvent","removeEventListener","detachEvent","preventDefault","event","window","returnValue","getTarget","target","srcElement","nodeType","parentNode","hasParent","parent","e","option","asBoolean","defaultValue","asNumber","asString","asSize","asElement","hexToRGB","hex","shorthandRegex","replace","r","g","result","parseInt","overrideOpacity","color","opacity","rgb","substr","RGBToHex","red","green","blue","toString","slice","parseColor","isValidRGB","map","isValidHex","hsv","hexToHSV","lighterColorHSV","h","s","v","darkerColorHSV","darkerColorHex","HSVToHex","lighterColorHex","background","border","highlight","hover","RGBToHSV","minRGB","maxRGB","d","hue","saturation","cssUtil","cssText","styles","style","trim","parts","keys","addCssText","currentStyles","newStyles","removeCssText","removeStyles","HSVToRGB","floor","f","q","t","isOk","test","isValidRGBA","rgba","selectiveBridgeObject","fields","referenceObject","objectTo","create","bridgeObject","mergeOptions","mergeTarget","enabled","binarySearchCustom","orderedItems","searchFunction","field","field2","maxIterations","iteration","low","high","middle","item","searchResult","binarySearchValue","sidePreference","prevValue","nextValue","easingFunctions","linear","easeInQuad","easeOutQuad","easeInOutQuad","easeInCubic","easeOutCubic","easeInOutCubic","easeInQuart","easeOutQuart","easeInOutQuart","easeInQuint","easeOutQuint","easeInOutQuint","global","utils_hooks__hooks","hookCallback","apply","setHookCallback","prototype","fn","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","val","_isAMomentObject","_i","_f","_l","_tzm","_isUTC","_offset","_locale","momentProperties","Moment","config","updateInProgress","updateOffset","toInt","argumentForCoercion","coercedNumber","isFinite","ceil","compareArrays","array1","array2","dontConvert","lengthDiff","abs","diffs","Locale","normalizeLocale","toLowerCase","chooseLocale","names","j","next","loadLocale","name","oldLocale","locales","globalLocale","_abbr","code","locale_locales__getSetGlobalLocale","values","data","locale_locales__getLocale","defineLocale","abbr","set","addUnitAlias","unit","shorthand","lowerCase","aliases","normalizeUnits","units","normalizeObjectUnits","inputObject","normalizedProp","normalizedInput","makeGetSet","keepTime","get_set__set","get_set__get","mom","getSet","zeroFill","number","targetLength","forceSign","output","sign","addFormatToken","token","padded","ordinal","func","formatTokenFunctions","localeData","removeFormattingTokens","makeFormatFunction","formattingTokens","Function","formatMoment","isValid","expandFormat","formatFunctions","invalidDate","replaceLongDateFormatTokens","longDateFormat","localFormattingTokens","lastIndex","addRegexToken","regex","strictRegex","regexes","isStrict","getParseRegexForToken","RegExp","unescapeFormat","matched","p1","p2","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","y","M","ms","setFullYear","createUTCDate","setUTCFullYear","daysInYear","isLeapYear","getIsLeapYear","weekOfYear","firstDayOfWeek","firstDayOfWeekOfYear","adjustedMoment","end","daysToDayOfWeek","day","local__createLocal","add","week","dayOfYear","localeWeek","_week","dow","doy","localeFirstDayOfWeek","localeFirstDayOfYear","getSetWeek","getSetISOWeek","dayOfYearFromWeeks","weekday","daysToAdd","getUTCDay","getSetDayOfYear","round","clone","startOf","defaults","currentDateArray","now","_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","args","Duration","duration","years","quarters","quarter","weeks","days","hours","minutes","seconds","milliseconds","_milliseconds","_days","_data","_bubble","isDuration","offset","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","base","isAfter","isBefore","createAdder","direction","period","dur","tmp","isAdding","moment_calendar__calendar","time","sod","calendar","inputMs","endOf","isBetween","isSame","absFloor","asFloat","delta","that","zoneDelta","monthDiff","anchor2","adjust","wholeMonthDiff","anchor","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","toUpperCase","_invalidDate","_ordinal","preParsePostFormat","relative__relativeTime","isFuture","_relativeTime","pastFuture","locale_set__set","_ordinalParseLenient","_ordinalParse","source","lists__get","setter","list","count","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","threshold","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","get","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","node","_nodeId","n","rnds","random","rng","_rng","globalVar","crypto","getRandomValues","_rnds8","Uint8Array","_rnds","_seedBytes","prepareElements","JSONcontainer","elementType","redundant","used","cleanupElements","getSVGElement","svgContainer","shift","document","createElementNS","appendChild","getDOMElement","DOMContainer","insertBefore","createElement","drawPoint","x","group","labelObj","point","drawPoints","setAttributeNS","size","label","xOffset","yOffset","content","textContent","drawBar","width","height","rect","_options","_fieldId","fieldId","_type","_subscribers","setOptions","queue","_queue","destroy","on","subscribers","subscribe","off","filter","unsubscribe","_trigger","params","senderId","concat","subscriber","addedIds","me","_addItem","update","updatedIds","updatedData","addOrUpdate","_updateItem","ids","firstType","returnType","allowedValues","itemId","_getItem","order","_sort","_filterFields","getIds","getDataSet","mappedItems","filteredItem","sort","av","bv","remove","removedId","removedIds","_remove","clear","maxField","itemField","minField","distinct","fieldType","exists","types","raw","converted","JSON","stringify","delay","Infinity","_timeout","_extended","_flushIfNeeded","flush","methods","original","method","context","entry","clearTimeout","setTimeout","_ids","_onEvent","setData","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","clientX","targetTouches","getMouseY","clientY","Emitter","_setScale","z","xCenter","yCenter","zCenter","setArmLocation","_convert3Dto2D","point3d","translation","_convertPointToTranslation","_convertTranslationToScreen","ax","ay","az","cx","getCameraLocation","cy","cz","sinTx","sin","getCameraRotation","cosTx","cos","sinTy","cosTy","sinTz","cosTz","dx","dy","dz","bx","by","ex","ey","ez","getArmLength","xcenter","frame","canvas","clientWidth","ycenter","_setBackgroundColor","backgroundColor","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","redraw","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","innerHTML","onmousedown","_onMouseDown","ontouchstart","_onTouchStart","onmousewheel","_onWheel","ontooltip","_onTooltip","onkeydown","setSize","_resizeCanvas","clientHeight","animationStart","slider","play","animationStop","stop","_resizeCenter","setCameraPosition","pos","horizontal","vertical","distance","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","start","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","PI","surface","corners","xWidth","yWidth","surfaces","center","avg","transCenter","leftButtonDown","_onMouseUp","which","button","touchDown","startMouseX","startMouseY","startStart","startEnd","startArmRotation","cursor","onmousemove","_onMouseMove","onmouseup","diffX","diffY","horizontalNew","verticalNew","snapAngle","snapValue","parameters","emit","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","sqrt","line","dot","dom","borderRadius","boxShadow","borderLeft","contentWidth","offsetWidth","contentHeight","offsetHeight","lineHeight","dotWidth","dotHeight","mixin","_callbacks","once","self","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","interval","clearInterval","getPlayInterval","setPlayLoop","doLoop","onChange","indexToLeft","startClientX","startSlideX","leftToIndex","_start","_end","_step","precision","_current","setRange","setStep","calculatePrettyStep","log10","log","LN10","step1","pow","step2","step5","toPrecision","getStep","groups","forthArgument","defaultOptions","autoResize","orientation","axis","maxHeight","minHeight","_create","body","domProps","emitter","bind","hiddenDates","getScale","timeAxis","toScreen","_toScreen","toGlobalScreen","_toGlobalScreen","toTime","_toTime","toGlobalTime","_toGlobalTime","range","timeAxis2","currentTime","itemSet","itemsData","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","itemData","_this","getDataRange","minItem","maxItem","factor","lhs","rhs","getStart","getEnd","show","getWidthLeft","getWidthRight","dataset","centerContainer","itemFromTarget","groupFromTarget","customTime","customTimeFromTarget","snap","snappedTime","what","foreground","labelSet","groupId","pageX","srcEvent","pageY","showCurrentTime","backgroundVertical","warned","title","current","substring","conversion","currentTimeTimer","setCurrentTime","getCurrentTime","_isResized","resized","_previousWidth","_previousHeight","propagating","__WEBPACK_AMD_DEFINE_FACTORY__","__WEBPACK_AMD_DEFINE_ARRAY__","__WEBPACK_AMD_DEFINE_RESULT__","_firstTarget","events","propagatedHandler","_handled","stopped","stopPropagation","firstTarget","_handlers","Manager","PropagatingHammer","o","wrapper","pointerType","isFirst","handler","eventType","exportName","setTimeoutContext","timeout","bindFn","invokeArrayArg","arg","each","iterator","dest","src","merge","inherit","child","properties","childP","baseP","_super","boolOrFn","TYPE_FUNCTION","ifUndefined","val1","val2","addEventListeners","splitStr","removeEventListeners","inStr","str","find","inArray","findByKey","uniqueArray","results","prefixed","property","prefix","camelProp","VENDOR_PREFIXES","uniqueId","_uniqueId","getWindowForElement","doc","ownerDocument","defaultView","parentWindow","Input","manager","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","getCenter","timeStamp","deltaTime","angle","getAngle","getDistance","computeDeltaXY","offsetDirection","getDirection","deltaX","deltaY","rotation","getRotation","computeIntervalInputData","offsetDelta","prevDelta","velocity","velocityX","velocityY","last","lastInterval","COMPUTE_INTERVAL","getVelocity","DIRECTION_NONE","DIRECTION_LEFT","DIRECTION_RIGHT","DIRECTION_UP","DIRECTION_DOWN","PROPS_XY","atan2","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","changed","changedTouches","TOUCH_TARGET_EVENTS","targetIds","getTouches","allTouches","INPUT_MOVE","identifier","changedTargetTouches","touch","mouse","TouchAction","cleanTouchActions","actions","TOUCH_ACTION_NONE","hasPanX","TOUCH_ACTION_PAN_X","hasPanY","TOUCH_ACTION_PAN_Y","TOUCH_ACTION_MANIPULATION","TOUCH_ACTION_AUTO","Recognizer","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","recognizers","preset","handlers","touchAction","toggleCssProps","recognizeWith","requireFailure","cssProps","triggerDomEvent","gestureEvent","createEvent","initEvent","gesture","dispatchEvent","TEST_ELEMENT","MOBILE_REGEX","INPUT_TYPE_TOUCH","INPUT_TYPE_PEN","INPUT_TYPE_MOUSE","INPUT_TYPE_KINECT","DIRECTION_HORIZONTAL","DIRECTION_VERTICAL","DIRECTION_ALL","MOUSE_INPUT_MAP","mousedown","mousemove","mouseup","POINTER_INPUT_MAP","pointerdown","pointermove","pointerup","pointercancel","pointerout","IE10_POINTER_TYPE_ENUM",2,3,4,5,"MSPointerEvent","removePointer","eventTypeNormalized","isTouch","storeIndex","pointerId","SINGLE_TOUCH_INPUT_MAP","touchstart","touchmove","touchend","touchcancel","TOUCH_INPUT_MAP","inputEvent","inputData","isMouse","PREFIXED_TOUCH_ACTION","NATIVE_TOUCH_ACTION","TOUCH_ACTION_COMPUTE","compute","getTouchAction","preventDefaults","prevented","hasNone","preventSrc","STATE_RECOGNIZED","STATE_FAILED","dropRecognizeWith","dropRequireFailure","hasRequireFailures","canRecognizeWith","withState","tryEmit","canEmit","inputDataClone","process","reset","attrTest","optionPointers","isRecognized","directionTest","hasMoved","inOut","validPointers","validMovement","validTime","taps","posThreshold","validTouchTime","failTimeout","validInterval","validMultiTap","tapCount","VERSION","domEvents","userSelect","touchSelect","touchCallout","contentZooming","userDrag","tapHighlightColor","STOP","FORCED_STOP","force","curRecognizer","existing","Tap","Pan","Swipe","Pinch","Rotate","Press","__webpack_amd_options__","deltaDifference","scaleOffset","startToFront","endToFront","moveable","zoomable","zoomMin","zoomMax","animationTimer","_onDragStart","_onDrag","_onDragEnd","_onMouseWheel","_onTouch","_onPinch","validateDirection","getPointer","byUser","finalStart","finalEnd","_cancelAnimation","initStart","initEnd","easingName","easingFunction","initTime","anyChanged","dragging","ease","done","_applyRange","updateHiddenDates","newStart","newEnd","getRange","totalHidden","previousDelta","allowDragging","getHiddenDurationBetween","diffRange","safeStart","snapAwayFromHidden","safeEnd","pointer","pointerDate","_pointerToDate","zoom","centerDate","hiddenDuration","hiddenDurationBefore","getHiddenDurationBefore","hiddenDurationAfter","move","onTouch","isTouching","onRelease","isReleasing","offTouch","offRelease","convertHiddenOptions","repeat","dateItem","totalRange","pixelTime","startDate","endDate","runUntil","dayOffset","removeDuplicates","startHidden","isHidden","endHidden","rangeStart","rangeEnd","hidden","safeDates","printDates","stepOverHiddenDates","timeStep","previousTime","stepInHidden","currentValue","switchedYear","switchedMonth","switchedDay","correctTimeForHidden","totalDuration","partialDuration","accumulatedHiddenDuration","getAccumulatedHiddenDuration","newTime","timeOffset","requiredDuration","previousPoint","correctionEnabled","hammerUtil","Activator","onMouseWheel","isActive","backgroundHorizontal","leftContainer","rightContainer","shadowTop","shadowBottom","shadowTopLeft","shadowBottomLeft","shadowTopRight","shadowBottomRight","_redrawTimer","scrollTop","scrollTopMin","customTimes","redrawCount","clickToUse","activator","_initAutoResize","component","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","editable","updateTime","updateGroup","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","dirty","displayed","hide","unselect","select","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","selected","_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","_moveToGroup","changes","shiftKey","oldSelection","newSelection","_getItemRange","_item","itemSetFromTarget","subgroups","subgroupIndex","subgroupOrderer","subgroupOrder","byStart","byEnd","checkRangedItems","inner","marker","Element","getLabelWidth","markerHeight","lastMarkerHeight","limitSize","repositionX","customOrderedItems","_updateVisibleItems","nostack","_calculateHeight","offsetTop","repositionY","resetSubgroups","setParent","orderSubgroups","_checkIfVisible","sortArray","sortField","removeFromDataSet","startArray","orderByStart","orderByEnd","oldVisibleItems","visibleItemsLookup","lowerBound","upperBound","_checkIfVisibleWithReference","initialPosByStart","_traceVisible","initialPosByEnd","initialPos","breakCondition","isVisible","EPSILON","aTime","bTime","iMax","collidingItem","jj","collision","newTop","baseClassName","_updateContents","_updateTitle","_updateDataAttributes","_updateStyle","getComputedStyle","maxWidth","_repaintDeleteButton","_repaintDragLeft","_repaintDragRight","contentLeft","parentWidth","boxWidth","groupChanged","deleteButton","template","_contentToString","removeAttribute","dataAttributes","attributes","setAttribute","outerHTML","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","marginLeft","onTop","itemSubgroup","totalHeight","newHeight","lines","majorTexts","minorTexts","lineTop","showMinorLabels","showMajorLabels","parentChanged","_calculateCharSize","minorLabelHeight","minorCharHeight","majorLabelHeight","majorCharHeight","minorLineHeight","minorLineWidth","majorLineHeight","majorLineWidth","foregroundNextSibling","nextSibling","backgroundNextSibling","_repaintLabels","timeLabelsize","minorCharWidth","cur","prevLine","xPrev","xFirstMajorLabel","_repaintMinorText","_repaintMajorText","_repaintMajorLine","_repaintMinorLine","leftTime","leftText","widthText","majorCharWidth","pop","createTextNode","childNodes","nodeValue","measureCharMinor","measureCharMajor","overlay","_onTapOverlay","onClick","_hasParent","deactivate","keycharm","escListener","activate","display","unbind","_exportFunctions","_bound","keydown","keyup","_keys","fromCharCode","down","handleEvent","up","keyCode","bound","bindAll","getKey","newBindings","eventParams","drag","_interopRequireDefault","__esModule","default","_classCallCheck","instance","Constructor","defineProperty","_createClass","defineProperties","descriptor","enumerable","configurable","writable","protoProps","staticProps","_ColorPicker","_ColorPicker2","parentModule","defaultContainer","pixelRatio","changedOptions","allowCreation","showButton","moduleOptions","domElements","colorPicker","_clean","_handleObject","_makeItem","_makeHeader","generateButton","_printOptions","onmouseover","onmouseout","optionsContainer","_push","insertTo","path","_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","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","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","Groups","defaultIndex","groupsArray","groupIndex","defaultGroups","useDefaultGroups","optionFields","groupName","groupname","_componentsNode","_componentsNode2","_componentsSharedLabel","_componentsSharedLabel2","NodesHandler","nodesListeners","borderWidthSelected","brokenImage","fixed","face","strokeColor","image","level","mass","scaling","maxVisible","drawThreshold","customScalingFunction","shadow","shape","parseOptions","updateShape","updateLabelModule","_reset","doNotEmit","oldNodesData","newNodes","positionInitially","changedData","dataChanged","constructorClass","dataArray","boundingBox","nodeList","nodeObj","toId","fromId","edgeList","_sharedLabel","_sharedLabel2","_nodesShapesBox","_nodesShapesBox2","_nodesShapesCircle","_nodesShapesCircle2","_nodesShapesCircularImage","_nodesShapesCircularImage2","_nodesShapesDatabase","_nodesShapesDatabase2","_nodesShapesDiamond","_nodesShapesDiamond2","_nodesShapesDot","_nodesShapesDot2","_nodesShapesEllipse","_nodesShapesEllipse2","_nodesShapesIcon","_nodesShapesIcon2","_nodesShapesImage","_nodesShapesImage2","_nodesShapesSquare","_nodesShapesSquare2","_nodesShapesStar","_nodesShapesStar2","_nodesShapesText","_nodesShapesText2","_nodesShapesTriangle","_nodesShapesTriangle2","_nodesShapesTriangleDown","_nodesShapesTriangleDown2","Node","imagelist","grouplist","globalOptions","baseSize","baseFontSize","predefinedPosition","labelModule","status","groupObj","imageObj","load","distanceToBorder","sizeDiff","fontDiff","updateBoundingBox","resize","parentOptions","newOptions","parsedColor","_slicedToArray","Symbol","_arr","_n","_e","_s","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","via","supportNodes","edgeType","colorDirty","_edgesBezierEdgeDynamic","_edgesBezierEdgeDynamic2","_edgesBezierEdgeStatic","_edgesBezierEdgeStatic2","_edgesStraightEdge","_edgesStraightEdge2","Edge","baseWidth","connected","_setInteractionWidths","changeInType","cleanup","togglePhysics","attachEdge","detachEdge","widthDiff","drawLine","drawArrows","drawLabel","viaNode","drawArrowHead","node1","node2","getPoint","translate","_rotateForLabelAlignment","_pointOnCircle","xFrom","yFrom","xTo","yTo","xObj","yObj","getDistanceToEdge","angleInDegrees","rotate","percentage","colorsDefined","_utilBezierEdgeBase","_utilBezierEdgeBase2","BezierEdgeDynamic","_BezierEdgeBase","setupSupportNode","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","nodesArray","average","averageSquared","hubCounter","largestHub","letiance","standardDeviation","hubThreshold","_Node2","_Node3","Cluster","_Node","requestAnimationFrame","mozRequestAnimationFrame","webkitRequestAnimationFrame","msRequestAnimationFrame","CanvasRenderer","redrawRequested","renderingActive","renderRequests","allowRedrawRequests","hideEdgesOnDrag","hideNodesOnDrag","_determineBrowserMethod","_resizeNodes","_requestRedraw","_startRendering","cancelAnimationFrame","_renderStep","_drawEdges","_drawNodes","controlNodesActive","_drawControlNodes","alwaysShow","topLeft","bottomRight","viewableArea","isSelected","isBoundingBoxOverlappingWith","browserType","Canvas","resizeTimer","resizeFunction","hammerFrame","_cleanUp","tabIndex","_prepareValue","emitEvent","oldWidth","oldHeight","_XconvertCanvasToDOM","_YconvertCanvasToDOM","_XconvertDOMtoCanvas","_YconvertDOMtoCanvas","View","animationSpeed","renderRefreshRate","animationEasingFunction","easingTime","sourceScale","targetScale","sourceTranslation","targetTranslation","lockedOnNodeId","lockedOnNodeOffset","touchTime","specificNodes","zoomLevel","initialZoom","positionDefined","_getRange","numberOfNodes","yDistance","xZoomLevel","yZoomLevel","_findCenter","animationOptions","nodePosition","lockedOnNode","animateView","locked","_transitionRedraw","viewCenter","distanceFromCenter","_lockedRedraw","finished","_componentsNavigationHandler","_componentsNavigationHandler2","_componentsPopup","_componentsPopup2","InteractionHandler","navigationHandler","popup","popupObj","popupTimer","dragNodes","dragView","keyboard","speed","bindToWindow","navigationButtons","tooltipDelay","zoomView","pinched","checkSelectionChanges","_generateClickEvent","previouslySelectedEdgeCount","_getSelectedEdgeCount","previouslySelectedNodeCount","_getSelectedNodeCount","previousSelection","selectAdditionalOnPoint","selectOnPoint","selectedEdgesCount","selectedNodesCount","currentSelection","_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","_stopMovement","configureKeyboardBindings","loadNavigationElements","cleanNavigation","navigationDOM","navigationDivs","navigationDivActions","_fit","bindToRedraw","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","isFixed","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 b1473dfc..0a863c8d 100644 --- a/dist/vis.min.js +++ b/dist/vis.min.js @@ -5,7 +5,7 @@ * A dynamic, browser-based visualization library. * * @version 4.3.1-SNAPSHOT - * @date 2015-06-16 + * @date 2015-06-17 * * @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(1),e.DOMutil=i(7),e.DataSet=i(8),e.DataView=i(10),e.Queue=i(9),e.Graph3d=i(11),e.graph3d={Camera:i(15),Filter:i(16),Point2d:i(12),Point3d:i(14),Slider:i(17),StepNumber:i(18)},e.Timeline=i(19),e.Graph2d=i(49),e.timeline={DateUtil:i(29),DataStep:i(52),Range:i(27),stack:i(33),TimeStep:i(36),components:{items:{Item:i(35),BackgroundItem:i(40),BoxItem:i(38),PointItem:i(39),RangeItem:i(34)},Component:i(21),CurrentTime:i(20),CustomTime:i(44),DataAxis:i(51),GraphGroup:i(53),Group:i(32),BackgroundGroup:i(37),ItemSet:i(31),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(2),e.hammer=i(23),e.Hammer=i(23)},function(t,e,i){var o=i(2),n=i(6);e.isNumber=function(t){return t instanceof Number||"number"==typeof t},e.recursiveDOMDelete=function(t){if(t)for(;t.hasChildNodes()===!0;)e.recursiveDOMDelete(t.firstChild),t.removeChild(t.firstChild)},e.giveRange=function(t,e,i,o){if(e==t)return.5;var n=1/(e-t);return Math.max(0,(o-t)*n)},e.isString=function(t){return t instanceof String||"string"==typeof t},e.isDate=function(t){if(t instanceof Date)return!0;if(e.isString(t)){var i=s.exec(t);if(i)return!0;if(!isNaN(Date.parse(t)))return!0}return!1},e.randomUUID=function(){return n.v4()},e.assignAllKeys=function(t,e){for(var i in t)t.hasOwnProperty(i)&&"object"!=typeof t[i]&&(t[i]=e)},e.fillIfDefined=function(t,i){var o=void 0===arguments[2]?!1:arguments[2];for(var n in t)void 0!==i[n]&&("object"!=typeof i[n]?void 0!==i[n]&&null!==i[n]||void 0===t[n]||o!==!0?t[n]=i[n]:delete t[n]:"object"==typeof t[n]&&e.fillIfDefined(t[n],i[n],o))},e.protoExtend=function(t,e){for(var i=1;ii;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(3)},function(t,e,i){(function(t){!function(e,i){t.exports=i()}(this,function(){function e(){return Si.apply(null,arguments)}function i(t){Si=t}function o(t){return"[object Array]"===Object.prototype.toString.call(t)}function n(t){return t instanceof Date||"[object Date]"===Object.prototype.toString.call(t)}function s(t,e){var i,o=[];for(i=0;i0)for(i in Ii)o=Ii[i],n=e[o],"undefined"!=typeof n&&(t[o]=n);return t}function f(t){p(this,t),this._d=new Date(+t._d),Ni===!1&&(Ni=!0,e.updateOffset(this),Ni=!1)}function m(t){return t instanceof f||null!=t&&null!=t._isAMomentObject}function v(t){var e=+t,i=0;return 0!==e&&isFinite(e)&&(i=e>=0?Math.floor(e):Math.ceil(e)),i}function g(t,e,i){var o,n=Math.min(t.length,e.length),s=Math.abs(t.length-e.length),r=0;for(o=0;n>o;o++)(i&&t[o]!==e[o]||!i&&v(t[o])!==v(e[o]))&&r++;return r+s}function y(){}function b(t){return t?t.toLowerCase().replace("_","-"):t}function w(t){for(var e,i,o,n,s=0;s0;){if(o=_(n.slice(0,e).join("-")))return o;if(i&&i.length>=e&&g(n,i,!0)>=e-1)break;e--}s++}return null}function _(e){var i=null;if(!zi[e]&&"undefined"!=typeof t&&t&&t.exports)try{i=Pi._abbr,!function(){var t=new Error('Cannot find module "./locale"');throw t.code="MODULE_NOT_FOUND",t}(),x(i)}catch(o){}return zi[e]}function x(t,e){var i;return t&&(i="undefined"==typeof e?M(t):k(t,e),i&&(Pi=i)),Pi._abbr}function k(t,e){return null!==e?(e.abbr=t,zi[t]||(zi[t]=new y),zi[t].set(e),x(t),zi[t]):(delete zi[t],null)}function M(t){var e;if(t&&t._locale&&t._locale._abbr&&(t=t._locale._abbr),!t)return Pi;if(!o(t)){if(e=_(t))return e;t=[t]}return w(t)}function O(t,e){var i=t.toLowerCase();Ai[i]=Ai[i+"s"]=Ai[e]=t}function D(t){return"string"==typeof t?Ai[t]||Ai[t.toLowerCase()]:void 0}function T(t){var e,i,o={};for(i in t)r(t,i)&&(e=D(i),e&&(o[e]=t[i]));return o}function C(t,i){return function(o){return null!=o?(S(this,t,o),e.updateOffset(this,i),this):E(this,t)}}function E(t,e){return t._d["get"+(t._isUTC?"UTC":"")+e]()}function S(t,e,i){return t._d["set"+(t._isUTC?"UTC":"")+e](i)}function P(t,e){var i;if("object"==typeof t)for(i in t)this.set(i,t[i]);else if(t=D(t),"function"==typeof this[t])return this[t](e);return this}function I(t,e,i){for(var o=""+Math.abs(t),n=t>=0;o.lengthe;e++)Fi[o[e]]?o[e]=Fi[o[e]]:o[e]=z(o[e]);return function(n){var s="";for(e=0;i>e;e++)s+=o[e]instanceof Function?o[e].call(n,t):o[e];return s}}function L(t,e){return t.isValid()?(e=B(e,t.localeData()),Ri[e]||(Ri[e]=A(e)),Ri[e](t)):t.localeData().invalidDate()}function B(t,e){function i(t){return e.longDateFormat(t)||t}var o=5;for(Bi.lastIndex=0;o>=0&&Bi.test(t);)t=t.replace(Bi,i),Bi.lastIndex=0,o-=1;return t}function R(t,e,i){to[t]="function"==typeof e?e:function(t){return t&&i?i:e}}function F(t,e){return r(to,t)?to[t](e._strict,e._locale):new RegExp(j(t))}function j(t){return t.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(t,e,i,o,n){return e||i||o||n}).replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function H(t,e){var i,o=e;for("string"==typeof t&&(t=[t]),"number"==typeof e&&(o=function(t,i){i[e]=v(t)}),i=0;io;o++){if(n=h([2e3,o]),i&&!this._longMonthsParse[o]&&(this._longMonthsParse[o]=new RegExp("^"+this.months(n,"").replace(".","")+"$","i"),this._shortMonthsParse[o]=new RegExp("^"+this.monthsShort(n,"").replace(".","")+"$","i")),i||this._monthsParse[o]||(s="^"+this.months(n,"")+"|^"+this.monthsShort(n,""),this._monthsParse[o]=new RegExp(s.replace(".",""),"i")),i&&"MMMM"===e&&this._longMonthsParse[o].test(t))return o;if(i&&"MMM"===e&&this._shortMonthsParse[o].test(t))return o;if(!i&&this._monthsParse[o].test(t))return o}}function X(t,e){var i;return"string"==typeof e&&(e=t.localeData().monthsParse(e),"number"!=typeof e)?t:(i=Math.min(t.date(),G(t.year(),e)),t._d["set"+(t._isUTC?"UTC":"")+"Month"](e,i),t)}function Z(t){return null!=t?(X(this,t),e.updateOffset(this,!0),this):E(this,"Month")}function K(){return G(this.year(),this.month())}function J(t){var e,i=t._a;return i&&-2===l(t).overflow&&(e=i[oo]<0||i[oo]>11?oo:i[no]<1||i[no]>G(i[io],i[oo])?no:i[so]<0||i[so]>24||24===i[so]&&(0!==i[ro]||0!==i[ao]||0!==i[ho])?so:i[ro]<0||i[ro]>59?ro:i[ao]<0||i[ao]>59?ao:i[ho]<0||i[ho]>999?ho:-1,l(t)._overflowDayOfYear&&(io>e||e>no)&&(e=no),l(t).overflow=e),t}function Q(t){e.suppressDeprecationWarnings===!1&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+t)}function $(t,e){var i=!0,o=t+"\n"+(new Error).stack;return a(function(){return i&&(Q(o),i=!1),e.apply(this,arguments)},e)}function tt(t,e){co[t]||(Q(e),co[t]=!0)}function et(t){var e,i,o=t._i,n=po.exec(o);if(n){for(l(t).iso=!0,e=0,i=fo.length;i>e;e++)if(fo[e][1].exec(o)){t._f=fo[e][0]+(n[6]||" ");break}for(e=0,i=mo.length;i>e;e++)if(mo[e][1].exec(o)){t._f+=mo[e][0];break}o.match(Ji)&&(t._f+="Z"),wt(t)}else t._isValid=!1}function it(t){var i=vo.exec(t._i);return null!==i?void(t._d=new Date(+i[1])):(et(t),void(t._isValid===!1&&(delete t._isValid,e.createFromInputFallback(t))))}function ot(t,e,i,o,n,s,r){var a=new Date(t,e,i,o,n,s,r);return 1970>t&&a.setFullYear(t),a}function nt(t){var e=new Date(Date.UTC.apply(null,arguments));return 1970>t&&e.setUTCFullYear(t),e}function st(t){return rt(t)?366:365}function rt(t){return t%4===0&&t%100!==0||t%400===0}function at(){return rt(this.year())}function ht(t,e,i){var o,n=i-e,s=i-t.day();return s>n&&(s-=7),n-7>s&&(s+=7),o=Tt(t).add(s,"d"),{week:Math.ceil(o.dayOfYear()/7),year:o.year()}}function dt(t){return ht(t,this._week.dow,this._week.doy).week}function lt(){return this._week.dow}function ut(){return this._week.doy}function ct(t){var e=this.localeData().week(this);return null==t?e:this.add(7*(t-e),"d")}function pt(t){var e=ht(this,1,4).week;return null==t?e:this.add(7*(t-e),"d")}function ft(t,e,i,o,n){var s,r,a=nt(t,0,1).getUTCDay();return a=0===a?7:a,i=null!=i?i:n,s=n-a+(a>o?7:0)-(n>a?7:0),r=7*(e-1)+(i-n)+s+1,{year:r>0?t:t-1,dayOfYear:r>0?r:st(t-1)+r}}function mt(t){var e=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==t?e:this.add(t-e,"d")}function vt(t,e,i){return null!=t?t:null!=e?e:i}function gt(t){var e=new Date;return t._useUTC?[e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()]:[e.getFullYear(),e.getMonth(),e.getDate()]}function yt(t){var e,i,o,n,s=[];if(!t._d){for(o=gt(t),t._w&&null==t._a[no]&&null==t._a[oo]&&bt(t),t._dayOfYear&&(n=vt(t._a[io],o[io]),t._dayOfYear>st(n)&&(l(t)._overflowDayOfYear=!0),i=nt(n,0,t._dayOfYear),t._a[oo]=i.getUTCMonth(),t._a[no]=i.getUTCDate()),e=0;3>e&&null==t._a[e];++e)t._a[e]=s[e]=o[e];for(;7>e;e++)t._a[e]=s[e]=null==t._a[e]?2===e?1:0:t._a[e];24===t._a[so]&&0===t._a[ro]&&0===t._a[ao]&&0===t._a[ho]&&(t._nextDay=!0,t._a[so]=0),t._d=(t._useUTC?nt:ot).apply(null,s),null!=t._tzm&&t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),t._nextDay&&(t._a[so]=24)}}function bt(t){var e,i,o,n,s,r,a;e=t._w,null!=e.GG||null!=e.W||null!=e.E?(s=1,r=4,i=vt(e.GG,t._a[io],ht(Tt(),1,4).year),o=vt(e.W,1),n=vt(e.E,1)):(s=t._locale._week.dow,r=t._locale._week.doy,i=vt(e.gg,t._a[io],ht(Tt(),s,r).year),o=vt(e.w,1),null!=e.d?(n=e.d,s>n&&++o):n=null!=e.e?e.e+s:s),a=ft(i,o,n,r,s),t._a[io]=a.year,t._dayOfYear=a.dayOfYear}function wt(t){if(t._f===e.ISO_8601)return void et(t);t._a=[],l(t).empty=!0;var i,o,n,s,r,a=""+t._i,h=a.length,d=0;for(n=B(t._f,t._locale).match(Li)||[],i=0;i0&&l(t).unusedInput.push(r),a=a.slice(a.indexOf(o)+o.length),d+=o.length),Fi[s]?(o?l(t).empty=!1:l(t).unusedTokens.push(s),W(s,o,t)):t._strict&&!o&&l(t).unusedTokens.push(s);l(t).charsLeftOver=h-d,a.length>0&&l(t).unusedInput.push(a),l(t).bigHour===!0&&t._a[so]<=12&&t._a[so]>0&&(l(t).bigHour=void 0),t._a[so]=_t(t._locale,t._a[so],t._meridiem),yt(t),J(t)}function _t(t,e,i){var o;return null==i?e:null!=t.meridiemHour?t.meridiemHour(e,i):null!=t.isPM?(o=t.isPM(i),o&&12>e&&(e+=12),o||12!==e||(e=0),e):e}function xt(t){var e,i,o,n,s;if(0===t._f.length)return l(t).invalidFormat=!0,void(t._d=new Date(NaN));for(n=0;ns)&&(o=s,i=e));a(t,i||e)}function kt(t){if(!t._d){var e=T(t._i);t._a=[e.year,e.month,e.day||e.date,e.hour,e.minute,e.second,e.millisecond],yt(t)}}function Mt(t){var e,i=t._i,s=t._f;return t._locale=t._locale||M(t._l),null===i||void 0===s&&""===i?c({nullInput:!0}):("string"==typeof i&&(t._i=i=t._locale.preparse(i)),m(i)?new f(J(i)):(o(s)?xt(t):s?wt(t):n(i)?t._d=i:Ot(t),e=new f(J(t)),e._nextDay&&(e.add(1,"d"),e._nextDay=void 0),e))}function Ot(t){var i=t._i;void 0===i?t._d=new Date:n(i)?t._d=new Date(+i):"string"==typeof i?it(t):o(i)?(t._a=s(i.slice(0),function(t){return parseInt(t,10)}),yt(t)):"object"==typeof i?kt(t):"number"==typeof i?t._d=new Date(i):e.createFromInputFallback(t)}function Dt(t,e,i,o,n){var s={};return"boolean"==typeof i&&(o=i,i=void 0),s._isAMomentObject=!0,s._useUTC=s._isUTC=n,s._l=i,s._i=t,s._f=e,s._strict=o,Mt(s)}function Tt(t,e,i,o){return Dt(t,e,i,o,!1)}function Ct(t,e){var i,n;if(1===e.length&&o(e[0])&&(e=e[0]),!e.length)return Tt();for(i=e[0],n=1;nt&&(t=-t,i="-"),i+I(~~(t/60),2)+e+I(~~t%60,2)})}function zt(t){var e=(t||"").match(Ji)||[],i=e[e.length-1]||[],o=(i+"").match(_o)||["-",0,0],n=+(60*o[1])+v(o[2]);return"+"===o[0]?n:-n}function At(t,i){var o,s;return i._isUTC?(o=i.clone(),s=(m(t)||n(t)?+t:+Tt(t))-+o,o._d.setTime(+o._d+s),e.updateOffset(o,!1),o):Tt(t).local()}function Lt(t){return 15*-Math.round(t._d.getTimezoneOffset()/15)}function Bt(t,i){var o,n=this._offset||0;return null!=t?("string"==typeof t&&(t=zt(t)),Math.abs(t)<16&&(t=60*t),!this._isUTC&&i&&(o=Lt(this)),this._offset=t,this._isUTC=!0,null!=o&&this.add(o,"m"),n!==t&&(!i||this._changeInProgress?$t(this,Xt(t-n,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,e.updateOffset(this,!0),this._changeInProgress=null)),this):this._isUTC?n:Lt(this)}function Rt(t,e){return null!=t?("string"!=typeof t&&(t=-t),this.utcOffset(t,e),this):-this.utcOffset()}function Ft(t){return this.utcOffset(0,t)}function jt(t){return this._isUTC&&(this.utcOffset(0,t),this._isUTC=!1,t&&this.subtract(Lt(this),"m")),this}function Ht(){return this._tzm?this.utcOffset(this._tzm):"string"==typeof this._i&&this.utcOffset(zt(this._i)),this}function Yt(t){return t=t?Tt(t).utcOffset():0,(this.utcOffset()-t)%60===0}function Wt(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function Gt(){if(this._a){var t=this._isUTC?h(this._a):Tt(this._a);return this.isValid()&&g(this._a,t.toArray())>0}return!1}function Ut(){return!this._isUTC}function Vt(){return this._isUTC}function qt(){return this._isUTC&&0===this._offset}function Xt(t,e){var i,o,n,s=t,a=null;return It(t)?s={ms:t._milliseconds,d:t._days,M:t._months}:"number"==typeof t?(s={},e?s[e]=t:s.milliseconds=t):(a=xo.exec(t))?(i="-"===a[1]?-1:1,s={y:0,d:v(a[no])*i,h:v(a[so])*i,m:v(a[ro])*i,s:v(a[ao])*i,ms:v(a[ho])*i}):(a=ko.exec(t))?(i="-"===a[1]?-1:1,s={y:Zt(a[2],i),M:Zt(a[3],i),d:Zt(a[4],i),h:Zt(a[5],i),m:Zt(a[6],i),s:Zt(a[7],i),w:Zt(a[8],i)}):null==s?s={}:"object"==typeof s&&("from"in s||"to"in s)&&(n=Jt(Tt(s.from),Tt(s.to)),s={},s.ms=n.milliseconds,s.M=n.months),o=new Pt(s),It(t)&&r(t,"_locale")&&(o._locale=t._locale),o}function Zt(t,e){var i=t&&parseFloat(t.replace(",","."));return(isNaN(i)?0:i)*e}function Kt(t,e){var i={milliseconds:0,months:0};return i.months=e.month()-t.month()+12*(e.year()-t.year()),t.clone().add(i.months,"M").isAfter(e)&&--i.months,i.milliseconds=+e-+t.clone().add(i.months,"M"),i}function Jt(t,e){var i;return e=At(e,t),t.isBefore(e)?i=Kt(t,e):(i=Kt(e,t),i.milliseconds=-i.milliseconds,i.months=-i.months),i}function Qt(t,e){return function(i,o){var n,s;return null===o||isNaN(+o)||(tt(e,"moment()."+e+"(period, number) is deprecated. Please use moment()."+e+"(number, period)."),s=i,i=o,o=s),i="string"==typeof i?+i:i,n=Xt(i,o),$t(this,n,t),this}}function $t(t,i,o,n){var s=i._milliseconds,r=i._days,a=i._months;n=null==n?!0:n,s&&t._d.setTime(+t._d+s*o),r&&S(t,"Date",E(t,"Date")+r*o),a&&X(t,E(t,"Month")+a*o),n&&e.updateOffset(t,r||a)}function te(t){var e=t||Tt(),i=At(e,this).startOf("day"),o=this.diff(i,"days",!0),n=-6>o?"sameElse":-1>o?"lastWeek":0>o?"lastDay":1>o?"sameDay":2>o?"nextDay":7>o?"nextWeek":"sameElse";return this.format(this.localeData().calendar(n,this,Tt(e)))}function ee(){return new f(this)}function ie(t,e){var i;return e=D("undefined"!=typeof e?e:"millisecond"),"millisecond"===e?(t=m(t)?t:Tt(t),+this>+t):(i=m(t)?+t:+Tt(t),i<+this.clone().startOf(e))}function oe(t,e){var i;return e=D("undefined"!=typeof e?e:"millisecond"),"millisecond"===e?(t=m(t)?t:Tt(t),+t>+this):(i=m(t)?+t:+Tt(t),+this.clone().endOf(e)t?Math.ceil(t):Math.floor(t)}function ae(t,e,i){var o,n,s=At(t,this),r=6e4*(s.utcOffset()-this.utcOffset());return e=D(e),"year"===e||"month"===e||"quarter"===e?(n=he(this,s),"quarter"===e?n/=3:"year"===e&&(n/=12)):(o=this-s,n="second"===e?o/1e3:"minute"===e?o/6e4:"hour"===e?o/36e5:"day"===e?(o-r)/864e5:"week"===e?(o-r)/6048e5:o),i?n:re(n)}function he(t,e){var i,o,n=12*(e.year()-t.year())+(e.month()-t.month()),s=t.clone().add(n,"months");return 0>e-s?(i=t.clone().add(n-1,"months"),o=(e-s)/(s-i)):(i=t.clone().add(n+1,"months"),o=(e-s)/(i-s)),-(n+o)}function de(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")}function le(){var t=this.clone().utc();return 0e;e++)if(this._weekdaysParse[e]||(i=Tt([2e3,1]).day(e),o="^"+this.weekdays(i,"")+"|^"+this.weekdaysShort(i,"")+"|^"+this.weekdaysMin(i,""),this._weekdaysParse[e]=new RegExp(o.replace(".",""),"i")),this._weekdaysParse[e].test(t))return e}function Fe(t){var e=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=t?(t=ze(t,this.localeData()),this.add(t-e,"d")):e}function je(t){var e=(this.day()+7-this.localeData()._week.dow)%7;return null==t?e:this.add(t-e,"d")}function He(t){return null==t?this.day()||7:this.day(this.day()%7?t:t-7)}function Ye(t,e){N(t,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),e)})}function We(t,e){return e._meridiemParse}function Ge(t){return"p"===(t+"").toLowerCase().charAt(0)}function Ue(t,e,i){return t>11?i?"pm":"PM":i?"am":"AM"}function Ve(t){N(0,[t,3],0,"millisecond")}function qe(){return this._isUTC?"UTC":""}function Xe(){return this._isUTC?"Coordinated Universal Time":""}function Ze(t){return Tt(1e3*t)}function Ke(){return Tt.apply(null,arguments).parseZone()}function Je(t,e,i){var o=this._calendar[t];return"function"==typeof o?o.call(e,i):o}function Qe(t){var e=this._longDateFormat[t];return!e&&this._longDateFormat[t.toUpperCase()]&&(e=this._longDateFormat[t.toUpperCase()].replace(/MMMM|MM|DD|dddd/g,function(t){return t.slice(1)}),this._longDateFormat[t]=e),e}function $e(){return this._invalidDate}function ti(t){return this._ordinal.replace("%d",t)}function ei(t){return t}function ii(t,e,i,o){var n=this._relativeTime[i];return"function"==typeof n?n(t,e,i,o):n.replace(/%d/i,t)}function oi(t,e){var i=this._relativeTime[t>0?"future":"past"];return"function"==typeof i?i(e):i.replace(/%s/i,e)}function ni(t){var e,i;for(i in t)e=t[i],"function"==typeof e?this[i]=e:this["_"+i]=e;this._ordinalParseLenient=new RegExp(this._ordinalParse.source+"|"+/\d{1,2}/.source)}function si(t,e,i,o){var n=M(),s=h().set(o,e);return n[i](s,t)}function ri(t,e,i,o,n){if("number"==typeof t&&(e=t,t=void 0),t=t||"",null!=e)return si(t,e,i,n);var s,r=[];for(s=0;o>s;s++)r[s]=si(t,s,i,n);return r}function ai(t,e){return ri(t,e,"months",12,"month")}function hi(t,e){return ri(t,e,"monthsShort",12,"month")}function di(t,e){return ri(t,e,"weekdays",7,"day")}function li(t,e){return ri(t,e,"weekdaysShort",7,"day")}function ui(t,e){return ri(t,e,"weekdaysMin",7,"day")}function ci(){var t=this._data;return this._milliseconds=Uo(this._milliseconds),this._days=Uo(this._days),this._months=Uo(this._months),t.milliseconds=Uo(t.milliseconds),t.seconds=Uo(t.seconds),t.minutes=Uo(t.minutes),t.hours=Uo(t.hours),t.months=Uo(t.months),t.years=Uo(t.years),this}function pi(t,e,i,o){var n=Xt(e,i);return t._milliseconds+=o*n._milliseconds,t._days+=o*n._days,t._months+=o*n._months,t._bubble()}function fi(t,e){return pi(this,t,e,1)}function mi(t,e){return pi(this,t,e,-1)}function vi(){var t,e,i,o=this._milliseconds,n=this._days,s=this._months,r=this._data,a=0;return r.milliseconds=o%1e3,t=re(o/1e3),r.seconds=t%60,e=re(t/60),r.minutes=e%60,i=re(e/60),r.hours=i%24,n+=re(i/24),a=re(gi(n)),n-=re(yi(a)),s+=re(n/30),n%=30,a+=re(s/12),s%=12,r.days=n,r.months=s,r.years=a,this}function gi(t){return 400*t/146097}function yi(t){return 146097*t/400}function bi(t){var e,i,o=this._milliseconds;if(t=D(t),"month"===t||"year"===t)return e=this._days+o/864e5,i=this._months+12*gi(e),"month"===t?i:i/12;switch(e=this._days+Math.round(yi(this._months/12)),t){case"week":return e/7+o/6048e5;case"day":return e+o/864e5;case"hour":return 24*e+o/36e5;case"minute":return 1440*e+o/6e4;case"second":return 86400*e+o/1e3;case"millisecond":return Math.floor(864e5*e)+o;default:throw new Error("Unknown unit "+t)}}function wi(){return this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*v(this._months/12)}function _i(t){return function(){return this.as(t)}}function xi(t){return t=D(t),this[t+"s"]()}function ki(t){return function(){return this._data[t]}}function Mi(){return re(this.days()/7)}function Oi(t,e,i,o,n){return n.relativeTime(e||1,!!i,t,o)}function Di(t,e,i){var o=Xt(t).abs(),n=hn(o.as("s")),s=hn(o.as("m")),r=hn(o.as("h")),a=hn(o.as("d")),h=hn(o.as("M")),d=hn(o.as("y")),l=n0,l[4]=i,Oi.apply(null,l)}function Ti(t,e){return void 0===dn[t]?!1:void 0===e?dn[t]:(dn[t]=e,!0)}function Ci(t){var e=this.localeData(),i=Di(this,!t,e);return t&&(i=e.pastFuture(+this,i)),e.postformat(i)}function Ei(){var t=ln(this.years()),e=ln(this.months()),i=ln(this.days()),o=ln(this.hours()),n=ln(this.minutes()),s=ln(this.seconds()+this.milliseconds()/1e3),r=this.asSeconds();return r?(0>r?"-":"")+"P"+(t?t+"Y":"")+(e?e+"M":"")+(i?i+"D":"")+(o||n||s?"T":"")+(o?o+"H":"")+(n?n+"M":"")+(s?s+"S":""):"P0D"}var Si,Pi,Ii=e.momentProperties=[],Ni=!1,zi={},Ai={},Li=/(\[[^\[]*\])|(\\)?(Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Q|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|mm?|ss?|S{1,4}|x|X|zz?|ZZ?|.)/g,Bi=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,Ri={},Fi={},ji=/\d/,Hi=/\d\d/,Yi=/\d{3}/,Wi=/\d{4}/,Gi=/[+-]?\d{6}/,Ui=/\d\d?/,Vi=/\d{1,3}/,qi=/\d{1,4}/,Xi=/[+-]?\d{1,6}/,Zi=/\d+/,Ki=/[+-]?\d+/,Ji=/Z|[+-]\d\d:?\d\d/gi,Qi=/[+-]?\d+(\.\d{1,3})?/,$i=/[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,to={},eo={},io=0,oo=1,no=2,so=3,ro=4,ao=5,ho=6;N("M",["MM",2],"Mo",function(){return this.month()+1}),N("MMM",0,0,function(t){return this.localeData().monthsShort(this,t)}),N("MMMM",0,0,function(t){return this.localeData().months(this,t)}),O("month","M"),R("M",Ui),R("MM",Ui,Hi),R("MMM",$i),R("MMMM",$i),H(["M","MM"],function(t,e){e[oo]=v(t)-1}),H(["MMM","MMMM"],function(t,e,i,o){var n=i._locale.monthsParse(t,o,i._strict);null!=n?e[oo]=n:l(i).invalidMonth=t});var lo="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),uo="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),co={};e.suppressDeprecationWarnings=!1;var po=/^\s*(?:[+-]\d{6}|\d{4})-(?:(\d\d-\d\d)|(W\d\d$)|(W\d\d-\d)|(\d\d\d))((T| )(\d\d(:\d\d(:\d\d(\.\d+)?)?)?)?([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,fo=[["YYYYYY-MM-DD",/[+-]\d{6}-\d{2}-\d{2}/],["YYYY-MM-DD",/\d{4}-\d{2}-\d{2}/],["GGGG-[W]WW-E",/\d{4}-W\d{2}-\d/],["GGGG-[W]WW",/\d{4}-W\d{2}/],["YYYY-DDD",/\d{4}-\d{3}/]],mo=[["HH:mm:ss.SSSS",/(T| )\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss",/(T| )\d\d:\d\d:\d\d/],["HH:mm",/(T| )\d\d:\d\d/],["HH",/(T| )\d\d/]],vo=/^\/?Date\((\-?\d+)/i;e.createFromInputFallback=$("moment construction falls back to js Date. This is discouraged and will be removed in upcoming major release. Please refer to https://github.com/moment/moment/issues/1407 for more info.",function(t){t._d=new Date(t._i+(t._useUTC?" UTC":""))}),N(0,["YY",2],0,function(){return this.year()%100}),N(0,["YYYY",4],0,"year"),N(0,["YYYYY",5],0,"year"),N(0,["YYYYYY",6,!0],0,"year"),O("year","y"),R("Y",Ki),R("YY",Ui,Hi),R("YYYY",qi,Wi),R("YYYYY",Xi,Gi),R("YYYYYY",Xi,Gi),H(["YYYY","YYYYY","YYYYYY"],io),H("YY",function(t,i){i[io]=e.parseTwoDigitYear(t)}),e.parseTwoDigitYear=function(t){return v(t)+(v(t)>68?1900:2e3)};var go=C("FullYear",!1);N("w",["ww",2],"wo","week"),N("W",["WW",2],"Wo","isoWeek"),O("week","w"),O("isoWeek","W"),R("w",Ui),R("ww",Ui,Hi),R("W",Ui),R("WW",Ui,Hi),Y(["w","ww","W","WW"],function(t,e,i,o){e[o.substr(0,1)]=v(t)});var yo={dow:0,doy:6};N("DDD",["DDDD",3],"DDDo","dayOfYear"),O("dayOfYear","DDD"),R("DDD",Vi),R("DDDD",Yi),H(["DDD","DDDD"],function(t,e,i){i._dayOfYear=v(t)}),e.ISO_8601=function(){};var bo=$("moment().min is deprecated, use moment.min instead. https://github.com/moment/moment/issues/1548",function(){var t=Tt.apply(null,arguments);return this>t?this:t}),wo=$("moment().max is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548",function(){var t=Tt.apply(null,arguments);return t>this?this:t});Nt("Z",":"),Nt("ZZ",""),R("Z",Ji),R("ZZ",Ji),H(["Z","ZZ"],function(t,e,i){i._useUTC=!0,i._tzm=zt(t)});var _o=/([\+\-]|\d\d)/gi;e.updateOffset=function(){};var xo=/(\-)?(?:(\d*)\.)?(\d+)\:(\d+)(?:\:(\d+)\.?(\d{3})?)?/,ko=/^(-)?P(?:(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?|([0-9,.]*)W)$/;Xt.fn=Pt.prototype;var Mo=Qt(1,"add"),Oo=Qt(-1,"subtract");e.defaultFormat="YYYY-MM-DDTHH:mm:ssZ";var Do=$("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(t){return void 0===t?this.localeData():this.locale(t)});N(0,["gg",2],0,function(){return this.weekYear()%100}),N(0,["GG",2],0,function(){return this.isoWeekYear()%100}),Te("gggg","weekYear"),Te("ggggg","weekYear"),Te("GGGG","isoWeekYear"),Te("GGGGG","isoWeekYear"),O("weekYear","gg"),O("isoWeekYear","GG"),R("G",Ki),R("g",Ki),R("GG",Ui,Hi),R("gg",Ui,Hi),R("GGGG",qi,Wi),R("gggg",qi,Wi),R("GGGGG",Xi,Gi),R("ggggg",Xi,Gi),Y(["gggg","ggggg","GGGG","GGGGG"],function(t,e,i,o){e[o.substr(0,2)]=v(t)}),Y(["gg","GG"],function(t,i,o,n){i[n]=e.parseTwoDigitYear(t)}),N("Q",0,0,"quarter"),O("quarter","Q"),R("Q",ji),H("Q",function(t,e){e[oo]=3*(v(t)-1)}),N("D",["DD",2],"Do","date"),O("date","D"),R("D",Ui),R("DD",Ui,Hi),R("Do",function(t,e){return t?e._ordinalParse:e._ordinalParseLenient}),H(["D","DD"],no),H("Do",function(t,e){e[no]=v(t.match(Ui)[0],10)});var To=C("Date",!0);N("d",0,"do","day"),N("dd",0,0,function(t){return this.localeData().weekdaysMin(this,t)}),N("ddd",0,0,function(t){return this.localeData().weekdaysShort(this,t)}),N("dddd",0,0,function(t){return this.localeData().weekdays(this,t)}),N("e",0,0,"weekday"),N("E",0,0,"isoWeekday"),O("day","d"),O("weekday","e"),O("isoWeekday","E"),R("d",Ui),R("e",Ui),R("E",Ui),R("dd",$i),R("ddd",$i),R("dddd",$i),Y(["dd","ddd","dddd"],function(t,e,i){var o=i._locale.weekdaysParse(t);null!=o?e.d=o:l(i).invalidWeekday=t}),Y(["d","e","E"],function(t,e,i,o){e[o]=v(t)});var Co="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Eo="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),So="Su_Mo_Tu_We_Th_Fr_Sa".split("_");N("H",["HH",2],0,"hour"),N("h",["hh",2],0,function(){return this.hours()%12||12}),Ye("a",!0),Ye("A",!1),O("hour","h"),R("a",We),R("A",We),R("H",Ui),R("h",Ui),R("HH",Ui,Hi),R("hh",Ui,Hi),H(["H","HH"],so),H(["a","A"],function(t,e,i){i._isPm=i._locale.isPM(t),i._meridiem=t}),H(["h","hh"],function(t,e,i){e[so]=v(t),l(i).bigHour=!0});var Po=/[ap]\.?m?\.?/i,Io=C("Hours",!0);N("m",["mm",2],0,"minute"),O("minute","m"),R("m",Ui),R("mm",Ui,Hi),H(["m","mm"],ro);var No=C("Minutes",!1);N("s",["ss",2],0,"second"),O("second","s"),R("s",Ui),R("ss",Ui,Hi),H(["s","ss"],ao);var zo=C("Seconds",!1);N("S",0,0,function(){return~~(this.millisecond()/100)}),N(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),Ve("SSS"),Ve("SSSS"),O("millisecond","ms"),R("S",Vi,ji),R("SS",Vi,Hi),R("SSS",Vi,Yi),R("SSSS",Zi),H(["S","SS","SSS","SSSS"],function(t,e){e[ho]=v(1e3*("0."+t))});var Ao=C("Milliseconds",!1);N("z",0,0,"zoneAbbr"),N("zz",0,0,"zoneName");var Lo=f.prototype;Lo.add=Mo,Lo.calendar=te,Lo.clone=ee,Lo.diff=ae,Lo.endOf=be,Lo.format=ue,Lo.from=ce,Lo.fromNow=pe,Lo.to=fe,Lo.toNow=me,Lo.get=P,Lo.invalidAt=De,Lo.isAfter=ie,Lo.isBefore=oe,Lo.isBetween=ne,Lo.isSame=se,Lo.isValid=Me,Lo.lang=Do,Lo.locale=ve,Lo.localeData=ge,Lo.max=wo,Lo.min=bo,Lo.parsingFlags=Oe,Lo.set=P,Lo.startOf=ye,Lo.subtract=Oo,Lo.toArray=ke,Lo.toDate=xe,Lo.toISOString=le,Lo.toJSON=le,Lo.toString=de,Lo.unix=_e,Lo.valueOf=we,Lo.year=go,Lo.isLeapYear=at,Lo.weekYear=Ee,Lo.isoWeekYear=Se,Lo.quarter=Lo.quarters=Ne,Lo.month=Z,Lo.daysInMonth=K,Lo.week=Lo.weeks=ct,Lo.isoWeek=Lo.isoWeeks=pt,Lo.weeksInYear=Ie,Lo.isoWeeksInYear=Pe,Lo.date=To,Lo.day=Lo.days=Fe,Lo.weekday=je,Lo.isoWeekday=He,Lo.dayOfYear=mt,Lo.hour=Lo.hours=Io,Lo.minute=Lo.minutes=No,Lo.second=Lo.seconds=zo,Lo.millisecond=Lo.milliseconds=Ao,Lo.utcOffset=Bt,Lo.utc=Ft,Lo.local=jt,Lo.parseZone=Ht,Lo.hasAlignedHourOffset=Yt,Lo.isDST=Wt,Lo.isDSTShifted=Gt,Lo.isLocal=Ut,Lo.isUtcOffset=Vt,Lo.isUtc=qt,Lo.isUTC=qt,Lo.zoneAbbr=qe,Lo.zoneName=Xe,Lo.dates=$("dates accessor is deprecated. Use date instead.",To),Lo.months=$("months accessor is deprecated. Use month instead",Z),Lo.years=$("years accessor is deprecated. Use year instead",go),Lo.zone=$("moment().zone is deprecated, use moment().utcOffset instead. https://github.com/moment/moment/issues/1779",Rt);var Bo=Lo,Ro={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},Fo={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY LT",LLLL:"dddd, MMMM D, YYYY LT"},jo="Invalid date",Ho="%d",Yo=/\d{1,2}/,Wo={future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},Go=y.prototype;Go._calendar=Ro,Go.calendar=Je,Go._longDateFormat=Fo,Go.longDateFormat=Qe,Go._invalidDate=jo,Go.invalidDate=$e,Go._ordinal=Ho,Go.ordinal=ti,Go._ordinalParse=Yo,Go.preparse=ei,Go.postformat=ei,Go._relativeTime=Wo,Go.relativeTime=ii,Go.pastFuture=oi,Go.set=ni,Go.months=U,Go._months=lo,Go.monthsShort=V,Go._monthsShort=uo,Go.monthsParse=q,Go.week=dt,Go._week=yo,Go.firstDayOfYear=ut,Go.firstDayOfWeek=lt,Go.weekdays=Ae,Go._weekdays=Co,Go.weekdaysMin=Be,Go._weekdaysMin=So,Go.weekdaysShort=Le,Go._weekdaysShort=Eo,Go.weekdaysParse=Re,Go.isPM=Ge,Go._meridiemParse=Po,Go.meridiem=Ue,x("en",{ordinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(t){var e=t%10,i=1===v(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th";return t+i}}),e.lang=$("moment.lang is deprecated. Use moment.locale instead.",x),e.langData=$("moment.langData is deprecated. Use moment.localeData instead.",M);var Uo=Math.abs,Vo=_i("ms"),qo=_i("s"),Xo=_i("m"),Zo=_i("h"),Ko=_i("d"),Jo=_i("w"),Qo=_i("M"),$o=_i("y"),tn=ki("milliseconds"),en=ki("seconds"),on=ki("minutes"),nn=ki("hours"),sn=ki("days"),rn=ki("months"),an=ki("years"),hn=Math.round,dn={s:45,m:45,h:22,d:26,M:11},ln=Math.abs,un=Pt.prototype;un.abs=ci,un.add=fi,un.subtract=mi,un.as=bi,un.asMilliseconds=Vo,un.asSeconds=qo,un.asMinutes=Xo,un.asHours=Zo,un.asDays=Ko,un.asWeeks=Jo,un.asMonths=Qo,un.asYears=$o,un.valueOf=wi,un._bubble=vi,un.get=xi,un.milliseconds=tn,un.seconds=en,un.minutes=on,un.hours=nn,un.days=sn,un.weeks=Mi,un.months=rn,un.years=an,un.humanize=Ci,un.toISOString=Ei,un.toString=Ei,un.toJSON=Ei,un.locale=ve,un.localeData=ge,un.toIsoString=$("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",Ei),un.lang=Do,N("X",0,0,"unix"),N("x",0,0,"valueOf"),R("x",Ki),R("X",Qi),H("X",function(t,e,i){i._d=new Date(1e3*parseFloat(t,10))}),H("x",function(t,e,i){i._d=new Date(v(t))}),e.version="2.10.3",i(Tt),e.fn=Bo,e.min=Et,e.max=St,e.utc=h,e.unix=Ze,e.months=ai,e.isDate=n,e.locale=x,e.invalid=c,e.duration=Xt,e.isMoment=m,e.weekdays=di,e.parseZone=Ke,e.localeData=M,e.isDuration=It,e.monthsShort=hi,e.weekdaysMin=ui,e.defineLocale=k,e.weekdaysShort=li,e.normalizeUnits=D,e.relativeTimeThreshold=Ti;var cn=e;return cn})}).call(e,i(4)(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=5},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.options.drawPoints.style?(a=e.getSVGElement("circle",n,s),a.setAttributeNS(null,"cx",t),a.setAttributeNS(null,"cy",i),a.setAttributeNS(null,"r",.5*o.options.drawPoints.size)):(a=e.getSVGElement("rect",n,s),a.setAttributeNS(null,"x",t-.5*o.options.drawPoints.size),a.setAttributeNS(null,"y",i-.5*o.options.drawPoints.size),a.setAttributeNS(null,"width",o.options.drawPoints.size),a.setAttributeNS(null,"height",o.options.drawPoints.size)),void 0!==o.options.drawPoints.styles&&a.setAttributeNS(null,"style",o.group.options.drawPoints.styles),a.setAttributeNS(null,"class",o.className+" vis-point"),r){var h=e.getSVGElement("text",n,s);r.xOffset&&(t+=r.xOffset),r.yOffset&&(i+=r.yOffset),r.content&&(h.textContent=r.content),r.className&&h.setAttributeNS(null,"class",r.className+" vis-label"),h.setAttributeNS(null,"x",t),h.setAttributeNS(null,"y",i)}return a},e.drawBar=function(t,i,o,n,s,r,a,h){if(0!=n){0>n&&(n*=-1,i-=n);var d=e.getSVGElement("rect",r,a);d.setAttributeNS(null,"x",t-.5*o),d.setAttributeNS(null,"y",i),d.setAttributeNS(null,"width",o),d.setAttributeNS(null,"height",n),d.setAttributeNS(null,"class",s),h&&d.setAttributeNS(null,"style",h)}}},function(t,e,i){function o(t,e){if(t&&!Array.isArray(t)&&(e=t,t=null),this._options=e||{},this._data={},this.length=0,this._fieldId=this._options.fieldId||"id",this._type={},this._options.type)for(var i in this._options.type)if(this._options.type.hasOwnProperty(i)){var o=this._options.type[i];"Date"==o||"ISODate"==o||"ASPDate"==o?this._type[i]="Date":this._type[i]=o}if(this._options.convert)throw new Error('Option "convert" is deprecated. Use "type" instead.');this._subscribers={},t&&this.add(t),this.setOptions(e)}var n=i(1),s=i(9);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(1),s=i(8);o.prototype.setData=function(t){var e,i,o;if(this._data){this._data.off&&this._data.off("*",this.listener),e=[];for(var n in this._ids)this._ids.hasOwnProperty(n)&&e.push(n);this._ids={},this.length=0,this._trigger("remove",{items:e})}if(this._data=t,this._data){for(this._fieldId=this._options.fieldId||this._data&&this._data.options&&this._data.options.fieldId||"id",e=this._data.getIds({filter:this._options&&this._options.filter}),i=0,o=e.length;o>i;i++)n=e[i],this._ids[n]=!0;this.length=e.length,this._trigger("add",{items:e}),this._data.on&&this._data.on("*",this.listener)}},o.prototype.refresh=function(){for(var t,e=this._data.getIds({filter:this._options&&this._options.filter}),i={},o=[],n=[],s=0;so;o++)s=a[o],r=this.get(s),r&&(this._ids[s]=!0,l.push(s));break;case"update":for(o=0,n=a.length;n>o;o++)s=a[o],r=this.get(s),r?this._ids[s]?(u.push(s),d.push(e.data[o])):(this._ids[s]=!0,l.push(s)):this._ids[s]&&(delete this._ids[s],c.push(s));break;case"remove":for(o=0,n=a.length;n>o;o++)s=a[o],this._ids[s]&&(delete this._ids[s],c.push(s))}this.length+=l.length-c.length,l.length&&this._trigger("add",{items:l},i),u.length&&this._trigger("update",{items:u,data:d},i),c.length&&this._trigger("remove",{items:c},i)}},o.prototype.on=s.prototype.on,o.prototype.off=s.prototype.off,o.prototype._trigger=s.prototype._trigger,o.prototype.subscribe=o.prototype.on,o.prototype.unsubscribe=o.prototype.off,t.exports=o},function(t,e,i){function o(t,e,i){if(!(this instanceof o))throw new SyntaxError("Constructor must be called with the new operator");this.containerElement=t,this.width="400px",this.height="400px",this.margin=10,this.defaultXCenter="55%",this.defaultYCenter="50%",this.xLabel="x",this.yLabel="y",this.zLabel="z";var n=function(t){return t};this.xValueLabel=n,this.yValueLabel=n,this.zValueLabel=n,this.filterLabel="time",this.legendLabel="value",this.style=o.STYLE.DOT,this.showPerspective=!0,this.showGrid=!0,this.keepAspectRatio=!0,this.showShadow=!1,this.showGrayBottom=!1,this.showTooltip=!1,this.verticalRatio=.5,this.animationInterval=1e3,this.animationPreload=!1,this.camera=new c, -this.eye=new l(0,0,-1),this.dataTable=null,this.dataPoints=null,this.colX=void 0,this.colY=void 0,this.colZ=void 0,this.colValue=void 0,this.colFilter=void 0,this.xMin=0,this.xStep=void 0,this.xMax=1,this.yMin=0,this.yStep=void 0,this.yMax=1,this.zMin=0,this.zStep=void 0,this.zMax=1,this.valueMin=0,this.valueMax=1,this.xBarWidth=1,this.yBarWidth=1,this.colorAxis="#4D4D4D",this.colorGrid="#D3D3D3",this.colorDot="#7DC1FF",this.colorDotBorder="#3267D2",this.create(),this.setOptions(i),e&&this.setData(e)}function n(t){return"clientX"in t?t.clientX:t.targetTouches[0]&&t.targetTouches[0].clientX||0}function s(t){return"clientY"in t?t.clientY:t.targetTouches[0]&&t.targetTouches[0].clientY||0}var r=i(13),a=i(8),h=i(10),d=i(1),l=i(14),u=i(12),c=i(15),p=i(16),f=i(17),m=i(18);r(o.prototype),o.prototype._setScale=function(){this.scale=new l(1/(this.xMax-this.xMin),1/(this.yMax-this.yMin),1/(this.zMax-this.zMin)),this.keepAspectRatio&&(this.scale.x3&&(this.colFilter=3);else{if(this.style!==o.STYLE.DOTCOLOR&&this.style!==o.STYLE.DOTSIZE&&this.style!==o.STYLE.BARCOLOR&&this.style!==o.STYLE.BARSIZE)throw'Unknown style "'+this.style+'"';this.colX=0,this.colY=1,this.colZ=2,this.colValue=3,t.getNumberOfColumns()>4&&(this.colFilter=4)}},o.prototype.getNumberOfRows=function(t){return t.length},o.prototype.getNumberOfColumns=function(t){var e=0;for(var i in t[0])t[0].hasOwnProperty(i)&&e++;return e},o.prototype.getDistinctValues=function(t,e){for(var i=[],o=0;ot[o][e]&&(i.min=t[o][e]),i.maxt;t++){var f=(t-c)/(p-c),v=240*f,g=this._hsv2rgb(v,1,1);u.strokeStyle=g,u.beginPath(),u.moveTo(h,r+t),u.lineTo(a,r+t),u.stroke()}u.strokeStyle=this.colorAxis,u.strokeRect(h,r,i,s)}if(this.style===o.STYLE.DOTSIZE&&(u.strokeStyle=this.colorAxis,u.fillStyle=this.colorDot,u.beginPath(),u.moveTo(h,r),u.lineTo(a,r),u.lineTo(a-i+e,d),u.lineTo(h,d),u.closePath(),u.fill(),u.stroke()),this.style===o.STYLE.DOTCOLOR||this.style===o.STYLE.DOTSIZE){var y=5,b=new m(this.valueMin,this.valueMax,(this.valueMax-this.valueMin)/5,!0);for(b.start(),b.getCurrent()0?this.yMin:this.yMax,n=this._convert3Dto2D(new l(_,r,this.zMin)),Math.cos(2*w)>0?(v.textAlign="center",v.textBaseline="top",n.y+=b):Math.sin(2*w)<0?(v.textAlign="right",v.textBaseline="middle"):(v.textAlign="left",v.textBaseline="middle"),v.fillStyle=this.colorAxis,v.fillText(" "+this.xValueLabel(i.getCurrent())+" ",n.x,n.y),i.next()}for(v.lineWidth=1,o=void 0===this.defaultYStep,i=new m(this.yMin,this.yMax,this.yStep,o),i.start(),i.getCurrent()0?this.xMin:this.xMax,n=this._convert3Dto2D(new l(s,i.getCurrent(),this.zMin)),Math.cos(2*w)<0?(v.textAlign="center",v.textBaseline="top",n.y+=b):Math.sin(2*w)>0?(v.textAlign="right",v.textBaseline="middle"):(v.textAlign="left",v.textBaseline="middle"),v.fillStyle=this.colorAxis,v.fillText(" "+this.yValueLabel(i.getCurrent())+" ",n.x,n.y),i.next();for(v.lineWidth=1,o=void 0===this.defaultZStep,i=new m(this.zMin,this.zMax,this.zStep,o),i.start(),i.getCurrent()0?this.xMin:this.xMax,r=Math.sin(w)<0?this.yMin:this.yMax;!i.end();)t=this._convert3Dto2D(new l(s,r,i.getCurrent())),v.strokeStyle=this.colorAxis,v.beginPath(),v.moveTo(t.x,t.y),v.lineTo(t.x-b,t.y),v.stroke(),v.textAlign="right",v.textBaseline="middle",v.fillStyle=this.colorAxis,v.fillText(this.zValueLabel(i.getCurrent())+" ",t.x-5,t.y),i.next();v.lineWidth=1,t=this._convert3Dto2D(new l(s,r,this.zMin)),e=this._convert3Dto2D(new l(s,r,this.zMax)),v.strokeStyle=this.colorAxis,v.beginPath(),v.moveTo(t.x,t.y),v.lineTo(e.x,e.y),v.stroke(),v.lineWidth=1,c=this._convert3Dto2D(new l(this.xMin,this.yMin,this.zMin)),p=this._convert3Dto2D(new l(this.xMax,this.yMin,this.zMin)),v.strokeStyle=this.colorAxis,v.beginPath(),v.moveTo(c.x,c.y),v.lineTo(p.x,p.y),v.stroke(),c=this._convert3Dto2D(new l(this.xMin,this.yMax,this.zMin)),p=this._convert3Dto2D(new l(this.xMax,this.yMax,this.zMin)),v.strokeStyle=this.colorAxis,v.beginPath(),v.moveTo(c.x,c.y),v.lineTo(p.x,p.y),v.stroke(),v.lineWidth=1,t=this._convert3Dto2D(new l(this.xMin,this.yMin,this.zMin)),e=this._convert3Dto2D(new l(this.xMin,this.yMax,this.zMin)),v.strokeStyle=this.colorAxis,v.beginPath(),v.moveTo(t.x,t.y),v.lineTo(e.x,e.y),v.stroke(),t=this._convert3Dto2D(new l(this.xMax,this.yMin,this.zMin)),e=this._convert3Dto2D(new l(this.xMax,this.yMax,this.zMin)),v.strokeStyle=this.colorAxis,v.beginPath(),v.moveTo(t.x,t.y),v.lineTo(e.x,e.y),v.stroke();var x=this.xLabel;x.length>0&&(u=.1/this.scale.y,s=(this.xMin+this.xMax)/2,r=Math.cos(w)>0?this.yMin-u:this.yMax+u,n=this._convert3Dto2D(new l(s,r,this.zMin)),Math.cos(2*w)>0?(v.textAlign="center",v.textBaseline="top"):Math.sin(2*w)<0?(v.textAlign="right",v.textBaseline="middle"):(v.textAlign="left",v.textBaseline="middle"),v.fillStyle=this.colorAxis,v.fillText(x,n.x,n.y));var k=this.yLabel;k.length>0&&(d=.1/this.scale.x,s=Math.sin(w)>0?this.xMin-d:this.xMax+d,r=(this.yMin+this.yMax)/2,n=this._convert3Dto2D(new l(s,r,this.zMin)),Math.cos(2*w)<0?(v.textAlign="center",v.textBaseline="top"):Math.sin(2*w)>0?(v.textAlign="right",v.textBaseline="middle"):(v.textAlign="left",v.textBaseline="middle"),v.fillStyle=this.colorAxis,v.fillText(k,n.x,n.y));var M=this.zLabel;M.length>0&&(h=30,s=Math.cos(w)>0?this.xMin:this.xMax,r=Math.sin(w)<0?this.yMin:this.yMax,a=(this.zMin+this.zMax)/2,n=this._convert3Dto2D(new l(s,r,a)),v.textAlign="right",v.textBaseline="middle",v.fillStyle=this.colorAxis,v.fillText(M,n.x-h,n.y))},o.prototype._hsv2rgb=function(t,e,i){var o,n,s,r,a,h;switch(r=i*e,a=Math.floor(t/60),h=r*(1-Math.abs(t/60%2-1)),a){case 0:o=r,n=h,s=0;break;case 1:o=h,n=r,s=0;break;case 2:o=0,n=r,s=h;break;case 3:o=0,n=h,s=r;break;case 4:o=h,n=0,s=r;break;case 5:o=r,n=0,s=h;break;default:o=0,n=0,s=0}return"RGB("+parseInt(255*o)+","+parseInt(255*n)+","+parseInt(255*s)+")"},o.prototype._redrawDataGrid=function(){var t,e,i,n,s,r,a,h,d,u,c,p,f,m=this.frame.canvas,v=m.getContext("2d");if(!(void 0===this.dataPoints||this.dataPoints.length<=0)){for(s=0;s0}else r=!0;r?(f=(t.point.z+e.point.z+i.point.z+n.point.z)/4,u=240*(1-(f-this.zMin)*this.scale.z/this.verticalRatio),c=1,this.showShadow?(p=Math.min(1+k.x/M/2,1),a=this._hsv2rgb(u,c,p),h=a):(p=1,a=this._hsv2rgb(u,c,p),h=this.colorAxis)):(a="gray",h=this.colorAxis),d=.5,v.lineWidth=d,v.fillStyle=a,v.strokeStyle=h,v.beginPath(),v.moveTo(t.screen.x,t.screen.y),v.lineTo(e.screen.x,e.screen.y),v.lineTo(n.screen.x,n.screen.y),v.lineTo(i.screen.x,i.screen.y),v.closePath(),v.fill(),v.stroke()}}else for(s=0;sc&&(c=0);var p,f,m;this.style===o.STYLE.DOTCOLOR?(p=240*(1-(d.point.value-this.valueMin)*this.scale.value),f=this._hsv2rgb(p,1,1),m=this._hsv2rgb(p,1,.8)):this.style===o.STYLE.DOTSIZE?(f=this.colorDot,m=this.colorDotBorder):(p=240*(1-(d.point.z-this.zMin)*this.scale.z/this.verticalRatio),f=this._hsv2rgb(p,1,1),m=this._hsv2rgb(p,1,.8)),i.lineWidth=1,i.strokeStyle=m,i.fillStyle=f,i.beginPath(),i.arc(d.screen.x,d.screen.y,c,0,2*Math.PI,!0),i.fill(),i.stroke()}}},o.prototype._redrawDataBar=function(){var t,e,i,n,s=this.frame.canvas,r=s.getContext("2d");if(!(void 0===this.dataPoints||this.dataPoints.length<=0)){for(t=0;t0&&(t=this.dataPoints[0],o.lineWidth=1,o.strokeStyle="blue",o.beginPath(),o.moveTo(t.screen.x,t.screen.y)),e=1;e0&&o.stroke()}},o.prototype._onMouseDown=function(t){if(t=t||window.event,this.leftButtonDown&&this._onMouseUp(t),this.leftButtonDown=t.which?1===t.which:1===t.button,this.leftButtonDown||this.touchDown){this.startMouseX=n(t),this.startMouseY=s(t),this.startStart=new Date(this.start),this.startEnd=new Date(this.end),this.startArmRotation=this.camera.getArmRotation(),this.frame.style.cursor="move";var e=this;this.onmousemove=function(t){e._onMouseMove(t)},this.onmouseup=function(t){e._onMouseUp(t)},d.addEventListener(document,"mousemove",e.onmousemove),d.addEventListener(document,"mouseup",e.onmouseup),d.preventDefault(t)}},o.prototype._onMouseMove=function(t){t=t||window.event;var e=parseFloat(n(t))-this.startMouseX,i=parseFloat(s(t))-this.startMouseY,o=this.startArmRotation.horizontal+e/200,r=this.startArmRotation.vertical+i/200,a=4,h=Math.sin(a/360*2*Math.PI);Math.abs(Math.sin(o))0?1:0>t?-1:0}var o=e[0],n=e[1],s=e[2],r=i((n.x-o.x)*(t.y-o.y)-(n.y-o.y)*(t.x-o.x)),a=i((s.x-n.x)*(t.y-n.y)-(s.y-n.y)*(t.x-n.x)),h=i((o.x-s.x)*(t.y-s.y)-(o.y-s.y)*(t.x-s.x));return!(0!=r&&0!=a&&r!=a||0!=a&&0!=h&&a!=h||0!=r&&0!=h&&r!=h)},o.prototype._dataPointFromXY=function(t,e){var i,n=100,s=null,r=null,a=null,h=new u(t,e);if(this.style===o.STYLE.BAR||this.style===o.STYLE.BARCOLOR||this.style===o.STYLE.BARSIZE)for(i=this.dataPoints.length-1;i>=0;i--){s=this.dataPoints[i];var d=s.surfaces;if(d)for(var l=d.length-1;l>=0;l--){var c=d[l],p=c.corners,f=[p[0].screen,p[1].screen,p[2].screen],m=[p[2].screen,p[3].screen,p[0].screen];if(this._insideTriangle(h,f)||this._insideTriangle(h,m))return s; -}}else for(i=0;ib)&&n>b&&(a=b,r=s)}}return r},o.prototype._showTooltip=function(t){var e,i,o;this.tooltip?(e=this.tooltip.dom.content,i=this.tooltip.dom.line,o=this.tooltip.dom.dot):(e=document.createElement("div"),e.style.position="absolute",e.style.padding="10px",e.style.border="1px solid #4d4d4d",e.style.color="#1a1a1a",e.style.background="rgba(255,255,255,0.7)",e.style.borderRadius="2px",e.style.boxShadow="5px 5px 10px rgba(128,128,128,0.5)",i=document.createElement("div"),i.style.position="absolute",i.style.height="40px",i.style.width="0",i.style.borderLeft="1px solid #4d4d4d",o=document.createElement("div"),o.style.position="absolute",o.style.height="0",o.style.width="0",o.style.border="5px solid #4d4d4d",o.style.borderRadius="5px",this.tooltip={dataPoint:null,dom:{content:e,line:i,dot:o}}),this._hideTooltip(),this.tooltip.dataPoint=t,"function"==typeof this.showTooltip?e.innerHTML=this.showTooltip(t.point):e.innerHTML="
x:"+t.point.x+"
y:"+t.point.y+"
z:"+t.point.z+"
",e.style.left="0",e.style.top="0",this.frame.appendChild(e),this.frame.appendChild(i),this.frame.appendChild(o);var n=e.offsetWidth,s=e.offsetHeight,r=i.offsetHeight,a=o.offsetWidth,h=o.offsetHeight,d=t.screen.x-n/2;d=Math.min(Math.max(d,10),this.frame.clientWidth-10-n),i.style.left=t.screen.x+"px",i.style.top=t.screen.y-r+"px",e.style.left=d+"px",e.style.top=t.screen.y-r-s+"px",o.style.left=t.screen.x-a/2+"px",o.style.top=t.screen.y-h/2+"px"},o.prototype._hideTooltip=function(){if(this.tooltip){this.tooltip.dataPoint=null;for(var t in this.tooltip.dom)if(this.tooltip.dom.hasOwnProperty(t)){var e=this.tooltip.dom[t];e&&e.parentNode&&e.parentNode.removeChild(e)}}},t.exports=o},function(t,e){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(14);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(10);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(13),i(23),i(1)),s=i(8),r=i(10),a=i(27),h=i(30),d=i(41),l=i(20),u=i(44),c=i(31),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(1),s=i(21),r=i(2),a=i(22);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){if("undefined"!=typeof window){var o=i(24),n=window.Hammer||i(25);t.exports=o(n,{preventDefault:"mouse"})}else t.exports=function(){throw Error("hammer.js is only available in a browser, not in node.js.")}},function(t,e,i){var o,n,s;!function(i){n=[],o=i,s="function"==typeof o?o.apply(e,n):o,!(void 0!==s&&(t.exports=s))}(function(){var t=null;return function e(i,o){function n(t){return t.match(/[^ ]+/g)}function s(e){if("hammer.input"!==e.type){if(e.srcEvent._handled||(e.srcEvent._handled={}),e.srcEvent._handled[e.type])return;e.srcEvent._handled[e.type]=!0}var i=!1;e.stopPropagation=function(){i=!0},e.firstTarget=t;for(var o=t;o&&!i;){var n=o.hammer&&o.hammer._handlers[e.type];if(n)for(var s=0;s0?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=F(a,h),e.distance=R(a,h),I(i,e),e.offsetDirection=B(e.deltaX,e.deltaY),e.scale=r?H(r.pointers,o):1,e.rotation=r?j(r.pointers,o):0,N(i,e);var d=t.element;b(e.srcEvent.target,d)&&(d=e.srcEvent.target),e.target=d}function I(t,e){var i=e.center,o=t.offsetDelta||{},n=t.prevDelta||{},s=t.prevInput||{};(e.eventType===Ct||s.eventType===St)&&(n=t.prevDelta={x:s.deltaX||0,y:s.deltaY||0},o=t.offsetDelta={x:i.x,y:i.y}),e.deltaX=n.x+(i.x-o.x),e.deltaY=n.y+(i.y-o.y)}function N(t,e){var i,o,n,s,r=t.lastInterval||e,h=e.timeStamp-r.timeStamp;if(e.eventType!=Pt&&(h>Tt||r.velocity===a)){var d=r.deltaX-e.deltaX,l=r.deltaY-e.deltaY,u=L(h,d,l);o=u.x,n=u.y,i=vt(u.x)>vt(u.y)?u.x:u.y,s=B(d,l),t.lastInterval=e}else i=r.velocity,o=r.velocityX,n=r.velocityY,s=r.direction;e.velocity=i,e.velocityX=o,e.velocityY=n,e.direction=s}function z(t){for(var e=[],i=0;in;)i+=t[n].clientX,o+=t[n].clientY,n++;return{x:mt(i/e),y:mt(o/e)}}function L(t,e,i){return{x:e/t||0,y:i/t||0}}function B(t,e){return t===e?It:vt(t)>=vt(e)?t>0?Nt:zt:e>0?At:Lt}function R(t,e,i){i||(i=jt);var o=e[i[0]]-t[i[0]],n=e[i[1]]-t[i[1]];return Math.sqrt(o*o+n*n)}function F(t,e,i){i||(i=jt);var o=e[i[0]]-t[i[0]],n=e[i[1]]-t[i[1]];return 180*Math.atan2(n,o)/Math.PI}function j(t,e){return F(e[1],e[0],Ht)-F(t[1],t[0],Ht)}function H(t,e){return R(e[0],e[1],Ht)/R(t[0],t[1],Ht)}function Y(){this.evEl=Wt,this.evWin=Gt,this.allow=!0,this.pressed=!1,C.apply(this,arguments)}function W(){this.evEl=qt,this.evWin=Xt,C.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}function G(){this.evTarget=Kt,this.evWin=Jt,this.started=!1,C.apply(this,arguments)}function U(t,e){var i=k(t.touches),o=k(t.changedTouches);return e&(St|Pt)&&(i=M(i.concat(o),"identifier",!0)),[i,o]}function V(){this.evTarget=$t,this.targetIds={},C.apply(this,arguments)}function q(t,e){var i=k(t.touches),o=this.targetIds;if(e&(Ct|Et)&&1===i.length)return o[i[0].identifier]=!0,[i,i];var n,s,r=k(t.changedTouches),a=[],h=this.target;if(s=i.filter(function(t){return b(t.target,h)}),e===Ct)for(n=0;na&&(e.push(t),a=e.length-1):n&(St|Pt)&&(i=!0),0>a||(e[a]=t, -this.callback(this.manager,n,{pointers:e,changedPointers:[t],pointerType:s,srcEvent:t}),i&&e.splice(a,1))}});var Zt={touchstart:Ct,touchmove:Et,touchend:St,touchcancel:Pt},Kt="touchstart",Jt="touchstart touchmove touchend touchcancel";p(G,C,{handler:function(t){var e=Zt[t.type];if(e===Ct&&(this.started=!0),this.started){var i=U.call(this,t,e);e&(St|Pt)&&i[0].length-i[1].length===0&&(this.started=!1),this.callback(this.manager,e,{pointers:i[0],changedPointers:i[1],pointerType:kt,srcEvent:t})}}});var Qt={touchstart:Ct,touchmove:Et,touchend:St,touchcancel:Pt},$t="touchstart touchmove touchend touchcancel";p(V,C,{handler:function(t){var e=Qt[t.type],i=q.call(this,t,e);i&&this.callback(this.manager,e,{pointers:i[0],changedPointers:i[1],pointerType:kt,srcEvent:t})}}),p(X,C,{handler:function(t,e,i){var o=i.pointerType==kt,n=i.pointerType==Ot;if(o)this.mouse.allow=!1;else if(n&&!this.mouse.allow)return;e&(St|Pt)&&(this.mouse.allow=!0),this.callback(t,e,i)},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var te=O(pt.style,"touchAction"),ee=te!==a,ie="compute",oe="auto",ne="manipulation",se="none",re="pan-x",ae="pan-y";Z.prototype={set:function(t){t==ie&&(t=this.compute()),ee&&(this.manager.element.style[te]=t),this.actions=t.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var t=[];return l(this.manager.recognizers,function(e){m(e.options.enable,[e])&&(t=t.concat(e.getTouchAction()))}),K(t.join(" "))},preventDefaults:function(t){if(!ee){var e=t.srcEvent,i=t.offsetDirection;if(this.manager.session.prevented)return void e.preventDefault();var o=this.actions,n=w(o,se),s=w(o,ae),r=w(o,re);return n||s&&i&Bt||r&&i&Rt?this.preventSrc(e):void 0}},preventSrc:function(t){this.manager.session.prevented=!0,t.preventDefault()}};var he=1,de=2,le=4,ue=8,ce=ue,pe=16,fe=32;J.prototype={defaults:{},set:function(t){return u(this.options,t),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(t){if(d(t,"recognizeWith",this))return this;var e=this.simultaneous;return t=tt(t,this),e[t.id]||(e[t.id]=t,t.recognizeWith(this)),this},dropRecognizeWith:function(t){return d(t,"dropRecognizeWith",this)?this:(t=tt(t,this),delete this.simultaneous[t.id],this)},requireFailure:function(t){if(d(t,"requireFailure",this))return this;var e=this.requireFail;return t=tt(t,this),-1===x(e,t)&&(e.push(t),t.requireFailure(this)),this},dropRequireFailure:function(t){if(d(t,"dropRequireFailure",this))return this;t=tt(t,this);var e=x(this.requireFail,t);return e>-1&&this.requireFail.splice(e,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(t){return!!this.simultaneous[t.id]},emit:function(t){function e(e){i.manager.emit(i.options.event+(e?Q(o):""),t)}var i=this,o=this.state;ue>o&&e(!0),e(),o>=ue&&e(!0)},tryEmit:function(t){return this.canEmit()?this.emit(t):void(this.state=fe)},canEmit:function(){for(var t=0;ts?Nt:zt,i=s!=this.pX,o=Math.abs(t.deltaX)):(n=0===r?It:0>r?At:Lt,i=r!=this.pY,o=Math.abs(t.deltaY))),t.direction=n,i&&o>e.threshold&&n&e.direction},attrTest:function(t){return et.prototype.attrTest.call(this,t)&&(this.state&de||!(this.state&de)&&this.directionTest(t))},emit:function(t){this.pX=t.deltaX,this.pY=t.deltaY;var e=$(t.direction);e&&this.manager.emit(this.options.event+e,t),this._super.emit.call(this,t)}}),p(ot,et,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[se]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.scale-1)>this.options.threshold||this.state&de)},emit:function(t){if(this._super.emit.call(this,t),1!==t.scale){var e=t.scale<1?"in":"out";this.manager.emit(this.options.event+e,t)}}}),p(nt,J,{defaults:{event:"press",pointers:1,time:500,threshold:5},getTouchAction:function(){return[oe]},process:function(t){var e=this.options,i=t.pointers.length===e.pointers,o=t.distancee.time;if(this._input=t,!o||!i||t.eventType&(St|Pt)&&!n)this.reset();else if(t.eventType&Ct)this.reset(),this._timer=h(function(){this.state=ce,this.tryEmit()},e.time,this);else if(t.eventType&St)return ce;return fe},reset:function(){clearTimeout(this._timer)},emit:function(t){this.state===ce&&(t&&t.eventType&St?this.manager.emit(this.options.event+"up",t):(this._input.timeStamp=gt(),this.manager.emit(this.options.event,this._input)))}}),p(st,et,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[se]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.rotation)>this.options.threshold||this.state&de)}}),p(rt,et,{defaults:{event:"swipe",threshold:10,velocity:.65,direction:Bt|Rt,pointers:1},getTouchAction:function(){return it.prototype.getTouchAction.call(this)},attrTest:function(t){var e,i=this.options.direction;return i&(Bt|Rt)?e=t.velocity:i&Bt?e=t.velocityX:i&Rt&&(e=t.velocityY),this._super.attrTest.call(this,t)&&i&t.direction&&t.distance>this.options.threshold&&vt(e)>this.options.velocity&&t.eventType&St},emit:function(t){var e=$(t.direction);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)}}),p(at,J,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:2,posThreshold:10},getTouchAction:function(){return[ne]},process:function(t){var e=this.options,i=t.pointers.length===e.pointers,o=t.distanceu,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(23);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(2);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(13),s=i(23),r=i(28),a=i(1),h=(i(8),i(10),i(27),i(31),i(41)),d=i(42),l=i(29),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.listeners={};var o=["tap","doubletap","press","pinch","pan","panstart","panmove","panend"];if(o.forEach(function(t){var e=function(e){i.isActive()&&i.emit(t,e)};i.hammer.on(t,e),i.listeners[t]=e}),r.onTouch(this.hammer,function(t){i.emit("touch",t)}.bind(this)),r.onRelease(this.hammer,function(t){i.emit("release",t)}.bind(this)),this.dom.root.addEventListener("mousewheel",e),this.dom.root.addEventListener("DOMMouseScroll",e),this.props={root:{},background:{},centerContainer:{},leftContainer:{},rightContainer:{},center:{},left:{},right:{},top:{},bottom:{},border:{},scrollTop:0,scrollTopMin:0},this.customTimes=[],this.touch={},this.redrawCount=0,!t)throw new Error("No container provided");t.appendChild(this.dom.root)},o.prototype.setOptions=function(t){if(t){var e=["width","height","minHeight","maxHeight","autoResize","start","end","clickToUse","dataAttributes","hiddenDates"];if(a.selectiveExtend(e,this.options,t),"orientation"in t&&("string"==typeof t.orientation?this.options.orientation={item:t.orientation,axis:t.orientation}:"object"==typeof t.orientation&&("item"in t.orientation&&(this.options.orientation.item=t.orientation.item),"axis"in t.orientation&&(this.options.orientation.axis=t.orientation.axis))),"both"===this.options.orientation.axis){if(!this.timeAxis2){var i=this.timeAxis2=new h(this.body);i.setOptions=function(t){var e=t?a.extend({},t):{};e.orientation="top",h.prototype.setOptions.call(i,e)},this.components.push(i)}}else if(this.timeAxis2){var o=this.components.indexOf(this.timeAxis2);-1!==o&&this.components.splice(o,1),this.timeAxis2.destroy(),this.timeAxis2=null}if("hiddenDates"in this.options&&l.convertHiddenOptions(this.body,this.options.hiddenDates),"clickToUse"in t&&(t.clickToUse?this.activator||(this.activator=new d(this.dom.root)):this.activator&&(this.activator.destroy(),delete this.activator)),"showCustomTime"in t)throw new Error("Option `showCustomTime` is deprecated. Create a custom time bar via timeline.addCustomTime(time [, id])");this._initAutoResize()}if(this.components.forEach(function(e){return e.setOptions(t)}),"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(23),i(35));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){this.id=null,this.parent=null,this.data=t,this.dom=null,this.conversion=e||{},this.options=i||{},this.selected=!1,this.displayed=!1,this.dirty=!0,this.top=null,this.left=null,this.width=null,this.height=null,this.editable=null,this.data&&this.data.hasOwnProperty("editable")&&"boolean"==typeof this.data.editable&&(this.editable=t.editable)}var n=i(23),s=i(1);o.prototype.stack=!0,o.prototype.select=function(){this.selected=!0,this.dirty=!0,this.displayed&&this.redraw()},o.prototype.unselect=function(){this.selected=!1,this.dirty=!0,this.displayed&&this.redraw()},o.prototype.setData=function(t){var e=void 0!=t.group&&this.data.group!=t.group;e&&this.parent.itemSet._moveToGroup(this,t.group),t.hasOwnProperty("editable")&&"boolean"==typeof t.editable&&(this.editable=t.editable),this.data=t,this.dirty=!0,this.displayed&&this.redraw()},o.prototype.setParent=function(t){this.displayed?(this.hide(),this.parent=t,this.parent&&this.show()):this.parent=t},o.prototype.isVisible=function(t){return!1},o.prototype.show=function(){return!1},o.prototype.hide=function(){return!1},o.prototype.redraw=function(){},o.prototype.repositionX=function(){},o.prototype.repositionY=function(){},o.prototype._repaintDeleteButton=function(t){var e=(this.options.editable.remove||this.data.editable===!0)&&this.data.editable!==!1;if(this.selected&&e&&!this.dom.deleteButton){var i=this,o=document.createElement("div");o.className="vis-delete",o.title="Delete this item",new n(o).on("tap",function(t){t.stopPropagation(),i.parent.removeFromDataSet(i)}),t.appendChild(o),this.dom.deleteButton=o}else!this.selected&&this.dom.deleteButton&&(this.dom.deleteButton.parentNode&&this.dom.deleteButton.parentNode.removeChild(this.dom.deleteButton),this.dom.deleteButton=null)},o.prototype._updateContents=function(t){var e;if(this.options.template){var i=this.parent.itemSet.itemsData.get(this.id);e=this.options.template(i)}else e=this.data.content;var o=this._contentToString(this.content)!==this._contentToString(e);if(o){if(e instanceof Element)t.innerHTML="",t.appendChild(e);else if(void 0!=e)t.innerHTML=e;else if("background"!=this.data.type||void 0!==this.data.content)throw new Error('Property "content" missing in item '+this.id);this.content=e}},o.prototype._updateTitle=function(t){null!=this.data.title?t.title=this.data.title||"":t.removeAttribute("vis-title")},o.prototype._updateDataAttributes=function(t){if(this.options.dataAttributes&&this.options.dataAttributes.length>0){var e=[];if(Array.isArray(this.options.dataAttributes))e=this.options.dataAttributes;else{if("all"!=this.options.dataAttributes)return;e=Object.keys(this.data)}for(var i=0;i0?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(1),i(32));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(35);i(1);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-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(1),s=i(21),r=i(36),a=i(29),h=i(2);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(13),a=i(23),h=i(1);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?i-1:0),n=1;i>n;n++)o[n-1]=arguments[n];this.allowCreation===!0&&!function(){var i=document.createElement("div");i.className="vis-network-configuration item s"+t.length,o.forEach(function(t){i.appendChild(t)}),e.domElements.push(i)}()}},{key:"_makeHeader",value:function(t){var e=document.createElement("div");e.className="vis-network-configuration header",e.innerHTML=t,this._makeItem([],e)}},{key:"_makeLabel",value:function(t,e){var i=void 0===arguments[2]?!1:arguments[2],o=document.createElement("div");return o.className="vis-network-configuration label s"+e.length,i===!0?o.innerHTML=""+t+":":o.innerHTML=t+":",o}},{key:"_makeDropdown",value:function(t,e,i){var o=document.createElement("select");o.className="vis-network-configuration select";var n=0;void 0!==e&&-1!==t.indexOf(e)&&(n=t.indexOf(e));for(var s=0;se&&n>2*e?a.min=2*e:n>.1*e&&(a.min=e/10),2*e>s&&1!==s&&(a.max=2*e),a.value=e):a.value=o;var 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)+""}}]),t}();e["default"]=d,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;is;s++)for(r=0;rp?p+1:p;var f=l/this.r,m=a.RGBToHSV(this.color.r,this.color.g,this.color.b);m.h=p,m.s=f;var v=a.HSVToRGB(m.h,m.s,m.v);v.a=this.color.a,this.color=v,this.initialColorDiv.style.backgroundColor="rgba("+this.initialColor.r+","+this.initialColor.g+","+this.initialColor.b+","+this.initialColor.a+")",this.newColorDiv.style.backgroundColor="rgba("+this.color.r+","+this.color.g+","+this.color.b+","+this.color.a+")"}}]),t}();e["default"]=h,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;is.distance?console.log('%cUnknown option detected: "'+e+'" in '+t.printLocation(n.path,e,"")+"Perhaps it was misplaced? Matching option found at: "+t.printLocation(s.path,s.closestMatch,""),h):n.distance<=d?console.log('%cUnknown option detected: "'+e+'". Did you mean "'+n.closestMatch+'"?'+t.printLocation(n.path,e),h):console.log('%cUnknown option detected: "'+e+'". Did you mean one of these: '+t.print(Object.keys(i))+t.printLocation(o,e),h),r=!0}},{key:"findInOptions",value:function(e,i,o){var n=void 0===arguments[3]?!1:arguments[3],r=1e9,a="",h=[],d=e.toLowerCase(),l=void 0;for(var u in i){var c=void 0;if(void 0!==i[u].__type__&&n===!0){var p=t.findInOptions(e,i[u],s.copyAndExtendArray(o,u));r>p.distance&&(a=p.closestMatch,h=p.path,r=p.distance,l=p.indexMatch)}else-1!==u.toLowerCase().indexOf(d)&&(l=u),c=t.levenshteinDistance(e,u),r>c&&(a=u,h=s.copyArray(o),r=c)}return{closestMatch:a,path:h,distance:r,indexMatch:l}}},{key:"printLocation",value:function(t,e){for(var i=void 0===arguments[2]?"Problem value found at: \n":arguments[2],o="\n\n"+i+"options = {\n",n=0;ns;s++)o+=" ";o+=t[n]+": {\n"}for(var s=0;sr?r:t,e=null==e?r:r>e?r:e}return{min:null!=t?new Date(t):null,max:null!=e?new Date(e):null}},o.prototype.getEventProperties=function(t){var e=t.center?t.center.x:t.clientX,i=t.center?t.center.y:t.clientY,o=e-n.getAbsoluteLeft(this.dom.centerContainer),s=i-n.getAbsoluteTop(this.dom.centerContainer),r=this._toTime(o),a=u.customTimeFromTarget(t),h=n.getTarget(t),d=null;n.hasParent(h,this.timeAxis.dom.foreground)?d="axis":this.timeAxis2&&n.hasParent(h,this.timeAxis2.dom.foreground)?d="axis":n.hasParent(h,this.linegraph.yAxisLeft.dom.frame)?d="data-axis":n.hasParent(h,this.linegraph.yAxisRight.dom.frame)?d="data-axis":n.hasParent(h,this.linegraph.legendLeft.dom.frame)?d="legend":n.hasParent(h,this.linegraph.legendRight.dom.frame)?d="legend":null!=a?d="custom-time":n.hasParent(h,this.currentTime.bar)?d="current-time":n.hasParent(h,this.dom.center)&&(d="background");var l=[],c=this.linegraph.yAxisLeft,p=this.linegraph.yAxisRight;return c.hidden||l.push(c.screenToValue(s)),p.hidden||l.push(p.screenToValue(s)),{event:t,what:d,pageX:t.srcEvent?t.srcEvent.pageX:t.pageX,pageY:t.srcEvent?t.srcEvent.pageY:t.pageY,x:o,y:s,time:r,value:l}},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(1),s=i(7),r=i(8),a=i(10),h=i(21),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(1),s=i(7),r=i(54),a=i(56),h=i(55);o.prototype.setItems=function(t){null!=t?(this.itemsData=t,1==this.options.sort&&this.itemsData.sort(function(t,e){return t.x-e.x})):this.itemsData=[]},o.prototype.setZeroPosition=function(t){this.zeroPosition=t},o.prototype.setOptions=function(t){if(void 0!==t){var e=["sampling","style","sort","yAxisOrientation","barChart"];n.selectiveDeepExtend(e,this.options,t),n.mergeOptions(this.options,t,"interpolation"),n.mergeOptions(this.options,t,"drawPoints"),n.mergeOptions(this.options,t,"shaded"),t.interpolation&&"object"==typeof t.interpolation&&t.interpolation.parametrization&&("uniform"==t.interpolation.parametrization?this.options.interpolation.alpha=0:"chordal"==t.interpolation.parametrization?this.options.interpolation.alpha=1:(this.options.interpolation.parametrization="centripetal",this.options.interpolation.alpha=.5))}"line"==this.options.style?this.type=new r(this.id,this.options):"bar"==this.options.style?this.type=new a(this.id,this.options):"points"==this.options.style&&(this.type=new h(this.id,this.options))},o.prototype.update=function(t){this.group=t,this.content=t.content||"graph",this.className=t.className||this.className||"vis-graph-group"+this.groupsUsingDefaultStyles[0]%10,this.visible=void 0===t.visible?!0:t.visible,this.style=t.style,this.setOptions(t.options)},o.prototype.drawIcon=function(t,e,i,o,n,r){var a,h,d=.5*r,l=s.getSVGElement("rect",i,o);if(l.setAttributeNS(null,"x",t),l.setAttributeNS(null,"y",e-d),l.setAttributeNS(null,"width",n),l.setAttributeNS(null,"height",2*d),l.setAttributeNS(null,"class","vis-outline"),"line"==this.options.style)a=s.getSVGElement("path",i,o),a.setAttributeNS(null,"class",this.className),void 0!==this.style&&a.setAttributeNS(null,"style",this.style),a.setAttributeNS(null,"d","M"+t+","+e+" L"+(t+n)+","+e),1==this.options.shaded.enabled&&(h=s.getSVGElement("path",i,o),"top"==this.options.shaded.orientation?h.setAttributeNS(null,"d","M"+t+", "+(e-d)+"L"+t+","+e+" L"+(t+n)+","+e+" L"+(t+n)+","+(e-d)):h.setAttributeNS(null,"d","M"+t+","+e+" L"+t+","+(e+d)+" L"+(t+n)+","+(e+d)+"L"+(t+n)+","+e),h.setAttributeNS(null,"class",this.className+" vis-icon-fill")),1==this.options.drawPoints.enabled&&s.drawPoint(t+.5*n,e,this,i,o);else{var u=Math.round(.3*n),c=Math.round(.4*r),p=Math.round(.75*r),f=Math.round((n-2*u)/3);s.drawBar(t+.5*u+f,e+d-c-1,u,c,this.className+" vis-bar",i,o,this.style),s.drawBar(t+1.5*u+f+2,e+d-p-1,u,p,this.className+" vis-bar",i,o,this.style)}},o.prototype.getLegend=function(t,e){var i=document.createElementNS("http://www.w3.org/2000/svg","svg");return this.drawIcon(0,.5*e,[],i,t,e),{icon:i,label:this.content,orientation:this.options.yAxisOrientation}},o.prototype.getYRange=function(t){return this.type.getYRange(t)},o.prototype.getData=function(t){return this.type.getData(t)},o.prototype.draw=function(t,e,i){this.type.draw(t,e,i)},t.exports=o},function(t,e,i){function o(t,e){this.groupId=t,this.options=e}var n=i(7),s=i(55);o.prototype.getData=function(t){for(var e=[],i=0;it[o].y?t[o].y:e,i=i0){t.sort(function(t,e){return t.x===e.x?t.groupIde[s].y?e[s].y:o,n=nt[r].accumulatedNegative?t[r].accumulatedNegative:o,o=o>t[r].accumulatedPositive?t[r].accumulatedPositive:o,n=n0&&(i=Math.min(i,Math.abs(e[o-1].x-e[o].x))),0===i&&(void 0===t[e[o].x]&&(t[e[o].x]={amount:0,resolved:0,accumulatedPositive:0,accumulatedNegative:0}),t[e[o].x].amount+=1)},o.prototype.draw=function(t,e,i){if(null!=t&&t.length>0){var r,a,h=Number(i.svg.style.height.replace("px",""));if(r=n.getSVGElement("path",i.svgElements,i.svg),r.setAttributeNS(null,"class",e.className),void 0!==e.style&&r.setAttributeNS(null,"style",e.style),a=1==e.options.interpolation.enabled?o._catmullRom(t,e):o._linear(t),1==e.options.shaded.enabled){var d,l=n.getSVGElement("path",i.svgElements,i.svg);d="top"==e.options.shaded.orientation?"M"+t[0].x+",0 "+a+"L"+t[t.length-1].x+",0":"M"+t[0].x+","+h+" "+a+"L"+t[t.length-1].x+","+h,l.setAttributeNS(null,"class",e.className+" vis-fill"),void 0!==e.options.shaded.style&&l.setAttributeNS(null,"style",e.options.shaded.style),l.setAttributeNS(null,"d",d)}r.setAttributeNS(null,"d","M"+a),1==e.options.drawPoints.enabled&&s.draw(t,e,i)}},o._catmullRomUniform=function(t){for(var e,i,o,n,s,r,a=Math.round(t[0].x)+","+Math.round(t[0].y)+" ",h=1/6,d=t.length,l=0;d-1>l;l++)e=0==l?t[0]:t[l-1],i=t[l],o=t[l+1],n=d>l+2?t[l+2]:o,s={x:(-e.x+6*i.x+o.x)*h,y:(-e.y+6*i.y+o.y)*h},r={x:(i.x+6*o.x-n.x)*h,y:(i.y+6*o.y-n.y)*h},a+="C"+s.x+","+s.y+" "+r.x+","+r.y+" "+o.x+","+o.y+" ";return a},o._catmullRom=function(t,e){var i=e.options.interpolation.alpha;if(0==i||void 0===i)return this._catmullRomUniform(t);for(var o,n,s,r,a,h,d,l,u,c,p,f,m,v,g,y,b,w,_,x=Math.round(t[0].x)+","+Math.round(t[0].y)+" ",k=t.length,M=0;k-1>M;M++)o=0==M?t[0]:t[M-1],n=t[M],s=t[M+1],r=k>M+2?t[M+2]:s,d=Math.sqrt(Math.pow(o.x-n.x,2)+Math.pow(o.y-n.y,2)),l=Math.sqrt(Math.pow(n.x-s.x,2)+Math.pow(n.y-s.y,2)),u=Math.sqrt(Math.pow(s.x-r.x,2)+Math.pow(s.y-r.y,2)),v=Math.pow(u,i),y=Math.pow(u,2*i),g=Math.pow(l,i),b=Math.pow(l,2*i),_=Math.pow(d,i),w=Math.pow(d,2*i),c=2*w+3*_*g+b,p=2*y+3*v*g+b,f=3*_*(_+g),f>0&&(f=1/f),m=3*v*(v+g),m>0&&(m=1/m),a={x:(-b*o.x+c*n.x+w*s.x)*f,y:(-b*o.y+c*n.y+w*s.y)*f},h={x:(y*n.x+p*s.x-b*r.x)*m,y:(y*n.y+p*s.y-b*r.y)*m},0==a.x&&0==a.y&&(a=n),0==h.x&&0==h.y&&(h=s),x+="C"+a.x+","+a.y+" "+h.x+","+h.y+" "+s.x+","+s.y+" ";return x},o._linear=function(t){for(var e="",i=0;it[o].y?t[o].y:e,i=it[o].y?t[o].y:e,i=i0&&(r=Math.min(r,Math.abs(c[l-1].x-a))),h=o._getSafeDrawData(r,d,m);else{var g=l+(p[a].amount-p[a].resolved),y=l-(p[a].resolved+1);g0&&(r=Math.min(r,Math.abs(c[y].x-a))),h=o._getSafeDrawData(r,d,m),p[a].resolved+=1,d.options.stack===!0?c[l].y0&&(i=Math.min(i,Math.abs(e[o-1].x-e[o].x))),0===i&&(void 0===t[e[o].x]&&(t[e[o].x]={amount:0,resolved:0,accumulatedPositive:0,accumulatedNegative:0}),t[e[o].x].amount+=1)},o._getSafeDrawData=function(t,e,i){var o,n;return t0?(o=i>t?i:t,n=0,"left"===e.options.barChart.align?n-=.5*t:"right"===e.options.barChart.align&&(n+=.5*t)):(o=e.options.barChart.width,n=0,"left"===e.options.barChart.align?n-=.5*e.options.barChart.width:"right"===e.options.barChart.align&&(n+=.5*e.options.barChart.width)),{width:o,offset:n}},o.getStackedYRange=function(t,e,i,n,s){if(t.length>0){t.sort(function(t,e){return t.x===e.x?t.groupIde[s].y?e[s].y:o,n=nt[r].accumulatedNegative?t[r].accumulatedNegative:o,o=o>t[r].accumulatedPositive?t[r].accumulatedPositive:o,n=nt?-1:1});for(var i=0;i")}this.dom.textArea.innerHTML=s,this.dom.textArea.style.lineHeight=.75*this.options.iconSize+this.options.iconSpacing+"px"}},o.prototype.drawLegendIcons=function(){if(this.dom.frame.parentNode){var t=Object.keys(this.groups);t.sort(function(t,e){return e>t?-1:1}),s.prepareElements(this.svgElements);var e=window.getComputedStyle(this.dom.frame).paddingTop,i=Number(e.replace("px","")),o=i,n=this.options.iconSize,r=.75*this.options.iconSize,a=i+.5*r+3;this.svg.style.width=n+5+i+"px";for(var h=0;h0){var i=this.groupIndex%this.groupsArray.length;this.groupIndex++,e={},e.color=this.groups[this.groupsArray[i]],this.groups[t]=e}else{var i=this.defaultIndex%this.defaultGroups.length;this.defaultIndex++,e={},e.color=this.defaultGroups[i],this.groups[t]=e}return e}},{key:"add",value:function(t,e){return this.groups[t]=e,this.groupsArray.push(t),e}}]),t}();e["default"]=r,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;it.left&&this.shape.topt.top}},{key:"isBoundingBoxOverlappingWith",value:function(t){return this.shape.boundingBox.leftt.left&&this.shape.boundingBox.topt.top}}],[{key:"parseOptions",value:function(t,e){var i=void 0===arguments[2]?!1:arguments[2],o=["color","font","fixed","shadow"];if(B.selectiveNotDeepExtend(o,t,e,i),B.mergeOptions(t,e,"shadow"),void 0!==e.color&&null!==e.color){var n=B.parseColor(e.color);B.fillIfDefined(t.color,n)}else i===!0&&null===e.color&&(t.color=void 0,delete t.color);void 0!==e.fixed&&null!==e.fixed&&("boolean"==typeof e.fixed?(t.fixed.x=e.fixed,t.fixed.y=e.fixed):(void 0!==e.fixed.x&&"boolean"==typeof e.fixed.x&&(t.fixed.x=e.fixed.x),void 0!==e.fixed.y&&"boolean"==typeof e.fixed.y&&(t.fixed.y=e.fixed.y))),void 0!==e.font&&a["default"].parseOptions(t.font,e),void 0!==e.scaling&&B.mergeOptions(t.scaling,e.scaling,"label")}}]),t}();e["default"]=R,t.exports=e["default"]},function(t,e,i){function o(t,e){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t)){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(h){n=!0,s=h}finally{try{!o&&a["return"]&&a["return"]()}finally{if(n)throw s}}return i}throw new TypeError("Invalid attempt to destructure non-iterable instance")}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;i=this.options.scaling.label.maxVisible&&(r=Number(this.options.scaling.label.maxVisible)/this.body.view.scale);var h=this.size.yLine,d=this._getColor(a),l=o(d,2),u=l[0],c=l[1],p=this._setAlignment(t,i,h,s),f=o(p,2);i=f[0],h=f[1],t.font=(e?"bold ":"")+r+"px "+this.options.font.face,t.fillStyle=u,t.textAlign="center",this.options.font.strokeWidth>0&&(t.lineWidth=this.options.font.strokeWidth,t.strokeStyle=c,t.lineJoin="round");for(var m=0;m0&&t.strokeText(this.lines[m],i,h),t.fillText(this.lines[m],i,h),h+=r}},{key:"_setAlignment",value:function(t,e,i,o){if("horizontal"!==this.options.font.align&&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?"bold ":"")+this.options.font.size+"px "+this.options.font.face,i=t.measureText(o[0]).width;for(var s=1;n>s;s++){var r=t.measureText(o[s]).width;i=r>i?r:i}}return this.lines=o,this.lineCount=n,i}}],[{key:"parseOptions",value:function(t,e){var i=void 0===arguments[2]?!1:arguments[2];if("string"==typeof e.font){var o=e.font.split(" ");t.size=o[0].replace("px",""),t.face=o[1],t.color=o[2]}else"object"==typeof e.font&&r.fillIfDefined(t,e.font,i);t.size=Number(t.size)}}]),t}();e["default"]=a,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;ithis.imageObj.height?(o=this.imageObj.width/this.imageObj.height,e=2*this.options.size*o||this.imageObj.width,i=2*this.options.size||this.imageObj.height):(o=this.imageObj.width&&this.imageObj.height?this.imageObj.height/this.imageObj.width:1,e=2*this.options.size||this.imageObj.width,i=2*this.options.size*o||this.imageObj.height),this.width=e,this.height=i,this.radius=.5*this.width}}},{key:"_drawRawCircle",value:function(t,e,i,o,n,s){var r=this.options.borderWidth,a=this.options.borderWidthSelected||2*this.options.borderWidth;t.strokeStyle=o?this.options.color.highlight.border:n?this.options.color.hover.border:this.options.color.border,t.lineWidth=o?a:r,t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.fillStyle=o?this.options.color.highlight.background:n?this.options.color.hover.background:this.options.color.background,t.circle(e,i,s),this.enableShadow(t),t.fill(),this.disableShadow(t),t.stroke()}},{key:"_drawImageAtPosition",value:function(t){0!=this.imageObj.width&&(t.globalAlpha=1,this.enableShadow(t),t.drawImage(this.imageObj,this.left,this.top,this.width,this.height),this.disableShadow(t))}},{key:"_drawImageLabel",value:function(t,e,i,o){var n,s=0;if(void 0!==this.height){s=.5*this.height;var r=this.labelModule.getTextSize(t);r.lineCount>=1&&(s+=r.height/2)}n=i+s,this.options.label&&(this.labelOffset=s),this.labelModule.draw(t,e,n,o,"hanging")}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;ii.shape.height?(r=i.x+.5*i.shape.width,a=i.y-h):(r=i.x+h,a=i.y-.5*i.shape.height),s=this._pointOnCircle(r,a,h,.125),this.labelModule.draw(t,s.x,s.y,n)}}}},{key:"isOverlappingWith",value:function(t){if(this.connected){var e=10,i=this.from.x,o=this.from.y,n=this.to.x,s=this.to.y,r=t.left,a=t.top,h=this.edgeType.getDistanceToEdge(i,o,n,s,r,a);return e>h}return!1}},{key:"_rotateForLabelAlignment",value:function(t){var e=this.from.y-this.to.y,i=this.from.x-this.to.x,o=Math.atan2(e,i);(-1>o&&0>i||o>0&&0>i)&&(o+=Math.PI),t.rotate(o)}},{key:"_pointOnCircle",value:function(t,e,i,o){var n=2*o*Math.PI;return{x:t+i*Math.cos(n),y:e-i*Math.sin(n)}}},{key:"select",value:function(){this.selected=!0}},{key:"unselect",value:function(){this.selected=!1}}],[{key:"parseOptions",value:function(t,e){var i=void 0===arguments[2]?!1:arguments[2],o=["id","from","hidden","hoverWidth","label","length","line","opacity","physics","selectionWidth","selfReferenceSize","to","title","value","width"];if(f.selectiveDeepExtend(o,t,e,i),f.mergeOptions(t,e,"smooth"),f.mergeOptions(t,e,"shadow"),void 0!==e.dashes&&null!==e.dashes?t.dashes=e.dashes:i===!0&&null===e.dashes&&(t.dashes=void 0,delete t.dashes),void 0!==e.scaling&&null!==e.scaling?(void 0!==e.scaling.min&&(t.scaling.min=e.scaling.min),void 0!==e.scaling.max&&(t.scaling.max=e.scaling.max),f.mergeOptions(t.scaling,e.scaling,"label")):i===!0&&null===e.scaling&&(t.scaling=void 0,delete t.scaling),void 0!==e.arrows&&null!==e.arrows)if("string"==typeof e.arrows){var n=e.arrows.toLowerCase();-1!=n.indexOf("to")&&(t.arrows.to.enabled=!0),-1!=n.indexOf("middle")&&(t.arrows.middle.enabled=!0),-1!=n.indexOf("from")&&(t.arrows.from.enabled=!0)}else{if("object"!=typeof e.arrows)throw new Error("The arrow newOptions can only be an object or a string. Refer to the documentation. You used:"+JSON.stringify(e.arrows));f.mergeOptions(t.arrows,e.arrows,"to"),f.mergeOptions(t.arrows,e.arrows,"middle"),f.mergeOptions(t.arrows,e.arrows,"from")}else i===!0&&null===e.arrows&&(t.arrows=void 0,delete t.arrows);if(void 0!==e.color&&null!==e.color)if(f.isString(e.color))t.color.color=e.color,t.color.highlight=e.color,t.color.hover=e.color,t.color.inherit=!1;else{var s=!1;void 0!==e.color.color&&(t.color.color=e.color.color,s=!0),void 0!==e.color.highlight&&(t.color.highlight=e.color.highlight,s=!0),void 0!==e.color.hover&&(t.color.hover=e.color.hover,s=!0),void 0!==e.color.inherit&&(t.color.inherit=e.color.inherit),void 0!==e.color.opacity&&(t.color.opacity=Math.min(1,Math.max(0,e.color.opacity))),void 0===e.color.inherit&&s===!0&&(t.color.inherit=!1)}else i===!0&&null===e.color&&(t.color=void 0,delete t.color);void 0!==e.font&&a["default"].parseOptions(t.font,e)}}]),t}();e["default"]=m,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i=l&&h>d;){var m=.5*(l+u);if(i=this.getPoint(m,a),o=Math.atan2(p.y-i.y,p.x-i.x),n=p.distanceToBorder(e,o),s=Math.sqrt(Math.pow(i.x-p.x,2)+Math.pow(i.y-p.y,2)),r=n-s,Math.abs(r)r?f===!1?l=m:u=m:f===!1?u=m:l=m,d++}return i.t=m,i}},{key:"_getDistanceToBezierEdge",value:function(t,e,i,o,n,s,r){var a=void 0,h=void 0;a=r.x,h=r.y;var d=1e9,l=void 0,u=void 0,c=void 0,p=void 0,f=void 0,m=t,v=e;for(u=1;10>u;u++)c=.1*u,p=Math.pow(1-c,2)*t+2*c*(1-c)*a+Math.pow(c,2)*i,f=Math.pow(1-c,2)*e+2*c*(1-c)*h+Math.pow(c,2)*o,u>0&&(l=this._getDistanceToLine(m,v,p,f,n,s),d=d>l?l:d),m=p,v=f;return d}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t,e){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t)){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(h){n=!0,s=h}finally{try{!o&&a["return"]&&a["return"]()}finally{if(n)throw s}}return i}throw new TypeError("Invalid attempt to destructure non-iterable instance")}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;io.shape.height?(e=o.x+.5*o.shape.width,i=o.y-n):(e=o.x+n,i=o.y-.5*o.shape.height),[e,i,n]}},{key:"_pointOnCircle",value:function(t,e,i,o){var n=2*o*Math.PI;return{x:t+i*Math.cos(n),y:e-i*Math.sin(n)}}},{key:"_findBorderPositionCircle",value:function(t,e,i){for(var o=i.x,n=i.y,s=i.low,r=i.high,a=i.direction,h=10,d=0,l=this.options.selfReferenceSize,u=void 0,c=void 0,p=void 0,f=void 0,m=void 0,v=.05,g=.5*(s+r);r>=s&&h>d&&(g=.5*(s+r),u=this._pointOnCircle(o,n,l,g),c=Math.atan2(t.y-u.y,t.x-u.x),p=t.distanceToBorder(e,c),f=Math.sqrt(Math.pow(u.x-t.x,2)+Math.pow(u.y-t.y,2)),m=p-f,!(Math.abs(m)0?a>0?s=g:r=g:a>0?r=g:s=g,d++;return u.t=g,u}},{key:"getLineWidth",value:function(t,e){return t===!0?Math.max(this.selectionWidth,.3/this.body.view.scale):e===!0?Math.max(this.hoverWidth,.3/this.body.view.scale):Math.max(this.options.width,.3/this.body.view.scale)}},{key:"getColor",value:function(t,e,i){var o=this.options.color;if(o.inherit!==!1){if("both"===o.inherit&&this.from.id!==this.to.id){var n=t.createLinearGradient(this.from.x,this.from.y,this.to.x,this.to.y),s=void 0,a=void 0;return s=this.from.options.color.highlight.border,a=this.to.options.color.highlight.border,this.from.selected===!1&&this.to.selected===!1?(s=r.overrideOpacity(this.from.options.color.border,this.options.color.opacity),a=r.overrideOpacity(this.to.options.color.border,this.options.color.opacity)):this.from.selected===!0&&this.to.selected===!1?a=this.to.options.color.border:this.from.selected===!1&&this.to.selected===!0&&(s=this.from.options.color.border),n.addColorStop(0,s),n.addColorStop(1,a),n}this.colorDirty===!0&&("to"===o.inherit?(this.color.highlight=this.to.options.color.highlight.border,this.color.hover=this.to.options.color.hover.border,this.color.color=r.overrideOpacity(this.to.options.color.border,o.opacity)):(this.color.highlight=this.from.options.color.highlight.border,this.color.hover=this.from.options.color.hover.border,this.color.color=r.overrideOpacity(this.from.options.color.border,o.opacity)))}else this.colorDirty===!0&&(this.color.highlight=o.highlight,this.color.hover=o.hover,this.color.color=r.overrideOpacity(o.color,o.opacity));return this.colorDirty=!1,e===!0?this.color.highlight:i===!0?this.color.hover:this.color.color}},{key:"_circle",value:function(t,e,i,o){this.enableShadow(t),t.beginPath(),t.arc(e,i,o,0,2*Math.PI,!1),t.stroke(),this.disableShadow(t)}},{key:"getDistanceToEdge",value:function(t,e,i,n,s,r,a){var h=0;if(this.from!=this.to)h=this._getDistanceToEdge(t,e,i,n,s,r,a);else{var d=this._getCircleData(),l=o(d,3),u=l[0],c=l[1],p=l[2],f=u-s,m=c-r;h=Math.abs(Math.sqrt(f*f+m*m)-p)}return this.labelModule.size.lefts&&this.labelModule.size.topr?0:h}},{key:"_getDistanceToLine",value:function(t,e,i,o,n,s){var r=i-t,a=o-e,h=r*r+a*a,d=((n-t)*r+(s-e)*a)/h;d>1?d=1:0>d&&(d=0);var l=t+d*r,u=e+d*a,c=l-n,p=u-s;return Math.sqrt(c*c+p*p)}},{key:"drawArrowHead",value:function(t,e,i,n,s){t.strokeStyle=this.getColor(t,n,s),t.fillStyle=t.strokeStyle,t.lineWidth=this.getLineWidth(n,s);var r=void 0,a=void 0,h=void 0,d=void 0,l=void 0,u=void 0,c=void 0;if("from"===e?(d=this.from,l=this.to,u=.1,c=this.options.arrows.from.scaleFactor):"to"===e?(d=this.to,l=this.from,u=-.1,c=this.options.arrows.to.scaleFactor):(d=this.to,l=this.from,c=this.options.arrows.middle.scaleFactor),d!=l){if("middle"!==e)if(this.options.smooth.enabled===!0){h=this.findBorderPosition(d,t,{via:i});var p=this.getPoint(Math.max(0,Math.min(1,h.t+u)),i);r=Math.atan2(h.y-p.y,h.x-p.x)}else r=Math.atan2(d.y-l.y,d.x-l.x),h=this.findBorderPosition(d,t);else r=Math.atan2(d.y-l.y,d.x-l.x),h=this.getPoint(.6,i);a=(10+5*this.options.width)*c,t.arrow(h.x,h.y,r,a),this.enableShadow(t),t.fill(),this.disableShadow(t),t.stroke()}else{var f=void 0,m=void 0,v=this._getCircleData(t),g=o(v,3),y=g[0],b=g[1],w=g[2];"from"===e?(m=this.findBorderPosition(this.from,t,{x:y,y:b,low:.25,high:.6,direction:-1}),f=-2*m.t*Math.PI+1.5*Math.PI+.1*Math.PI):"to"===e?(m=this.findBorderPosition(this.from,t,{x:y,y:b,low:.6,high:1,direction:1}),f=-2*m.t*Math.PI+1.5*Math.PI-1.1*Math.PI):(m=this._pointOnCircle(y,b,w,.175),f=3.9269908169872414);var _=(10+5*this.options.width)*c;t.arrow(m.x,m.y,f,_),this.enableShadow(t),t.fill(),this.disableShadow(t),t.stroke()}}},{key:"enableShadow",value:function(t){this.options.shadow.enabled===!0&&(t.shadowColor="rgba(0,0,0,0.5)",t.shadowBlur=this.options.shadow.size,t.shadowOffsetX=this.options.shadow.x,t.shadowOffsetY=this.options.shadow.y)}},{key:"disableShadow",value:function(t){this.options.shadow.enabled===!0&&(t.shadowColor="rgba(0,0,0,0)",t.shadowBlur=0,t.shadowOffsetX=0,t.shadowOffsetY=0)}}]),t}();e["default"]=a,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;ithis.to.y?this.from.xthis.to.x&&(t=this.from.x-i*s,e=this.from.y-i*s):this.from.ythis.to.x&&(t=this.from.x-i*s,e=this.from.y+i*s)),"discrete"===o&&(t=i*s>n?this.from.x:t)):Math.abs(this.from.x-this.to.x)>Math.abs(this.from.y-this.to.y)&&(this.from.y>this.to.y?this.from.xthis.to.x&&(t=this.from.x-i*n,e=this.from.y-i*n):this.from.ythis.to.x&&(t=this.from.x-i*n,e=this.from.y+i*n)),"discrete"===o&&(e=i*n>s?this.from.y:e));else if("straightCross"===o)Math.abs(this.from.x-this.to.x)Math.abs(this.from.y-this.to.y)&&(t=this.from.xthis.to.y?this.from.xthis.to.x&&(t=this.from.x-i*s,e=this.from.y-i*s,t=this.to.x>t?this.to.x:t):this.from.ythis.to.x&&(t=this.from.x-i*s,e=this.from.y+i*s,t=this.to.x>t?this.to.x:t)):Math.abs(this.from.x-this.to.x)>Math.abs(this.from.y-this.to.y)&&(this.from.y>this.to.y?this.from.xe?this.to.y:e):this.from.x>this.to.x&&(t=this.from.x-i*n,e=this.from.y-i*n,e=this.to.y>e?this.to.y:e):this.from.ythis.to.x&&(t=this.from.x-i*n,e=this.from.y+i*n,e=this.to.y1&&(this.startedStabilization=!1),this.stopSimulation())}},{key:"_emitStabilized",value:function(){var t=this;(this.stabilizationIterations>1||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];"number"!=typeof e&&(console.log("The stabilize method needs a numeric amount of iterations. Switching to default: ",this.options.stabilization.iterations),e=this.options.stabilization.iterations),this.body.emitter.emit("_resizeNodes"),this.stopSimulation(),this.stabilized=!1,this.body.emitter.emit("_blockRedrawRequests"),this.targetIterations=e,this.options.stabilization.onlyDynamicEdges===!0&&this._freezeNodes(),this.stabilizationIterations=0,setTimeout(function(){return t._stabilizationBatch()},0)}},{key:"_stabilizationBatch",value:function(){for(var t=0;this.stabilized===!1&&t0){var t=void 0,e=this.body.nodes,i=this.physicsBody.physicsNodeIndices,o=i.length,n=this._formBarnesHutTree(e,i);this.barnesHutTree=n;for(var s=0;o>s;s++)t=e[i[s]],t.options.mass>0&&(this._getForceContribution(n.root.children.NW,t),this._getForceContribution(n.root.children.NE,t),this._getForceContribution(n.root.children.SW,t),this._getForceContribution(n.root.children.SE,t))}}},{key:"_getForceContribution",value:function(t,e){if(t.childrenCount>0){var i=void 0,o=void 0,n=void 0;i=t.centerOfMass.x-e.x,o=t.centerOfMass.y-e.y,n=Math.sqrt(i*i+o*o),n*t.calcSize>this.thetaInversed?this._calculateForces(n,i,o,e,t):4===t.childrenCount?(this._getForceContribution(t.children.NW,e),this._getForceContribution(t.children.NE,e),this._getForceContribution(t.children.SW,e),this._getForceContribution(t.children.SE,e)):t.children.data.id!=e.id&&this._calculateForces(n,i,o,e,t)}}},{key:"_calculateForces",value:function(t,e,i,o,n){0===t&&(t=.1,e=t),this.overlapAvoidanceFactor<1&&(t=Math.max(.1+this.overlapAvoidanceFactor*o.shape.radius,t-o.shape.radius));var s=this.options.gravitationalConstant*n.mass*o.options.mass/Math.pow(t,3),r=e*s,a=i*s;this.physicsBody.forces[o.id].x+=r,this.physicsBody.forces[o.id].y+=a}},{key:"_formBarnesHutTree",value:function(t,e){for(var i=void 0,o=e.length,n=t[e[0]].x,s=t[e[0]].y,r=t[e[0]].x,a=t[e[0]].y,h=1;o>h;h++){var d=t[e[h]].x,l=t[e[h]].y;t[e[h]].options.mass>0&&(n>d&&(n=d),d>r&&(r=d),s>l&&(s=l),l>a&&(a=l))}var u=Math.abs(r-n)-Math.abs(a-s);u>0?(s-=.5*u,a+=.5*u):(n+=.5*u,r-=.5*u);var c=1e-5,p=Math.max(c,Math.abs(r-n)),f=.5*p,m=.5*(n+r),v=.5*(s+a),g={root:{centerOfMass:{x:0,y:0},mass:0,range:{minX:m-f,maxX:m+f,minY:v-f,maxY:v+f},size:p,calcSize:1/p,children:{data:null},maxWidth:0,level:0,childrenCount:4}};this._splitBranch(g.root);for(var h=0;o>h;h++)i=t[e[h]],i.options.mass>0&&this._placeInTree(g.root,i);return g}},{key:"_updateBranchMass",value:function(t,e){var i=t.mass+e.options.mass,o=1/i;t.centerOfMass.x=t.centerOfMass.x*t.mass+e.x*e.options.mass,t.centerOfMass.x*=o,t.centerOfMass.y=t.centerOfMass.y*t.mass+e.y*e.options.mass,t.centerOfMass.y*=o,t.mass=i;var n=Math.max(Math.max(e.height,e.radius),e.width);t.maxWidth=t.maxWidthe.x?t.children.NW.range.maxY>e.y?this._placeInRegion(t,e,"NW"):this._placeInRegion(t,e,"SW"):t.children.NW.range.maxY>e.y?this._placeInRegion(t,e,"NE"):this._placeInRegion(t,e,"SE")}},{key:"_placeInRegion",value:function(t,e,i){switch(t.children[i].childrenCount){case 0:t.children[i].children.data=e,t.children[i].childrenCount=1,this._updateBranchMass(t.children[i],e);break;case 1:t.children[i].children.data.x===e.x&&t.children[i].children.data.y===e.y?(e.x+=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.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=0;xo;)e.push(this.clusteredNodes[t].node),t=this.clusteredNodes[t].clusterId,o++;return e.push(this.body.nodes[t]),e}},{key:"_getConnectedId",value:function(t,e){return t.toId!=e?t.toId:t.fromId!=e?t.fromId:t.fromId}},{key:"_getHubSize",value:function(){for(var t=0,e=0,i=0,o=0,n=0;no&&(o=s.edges.length),t+=s.edges.length,e+=Math.pow(s.edges.length,2),i+=1}t/=i,e/=i;var r=e-Math.pow(t,2),a=Math.sqrt(r),h=Math.floor(t+2*a);return h>o&&(h=o),h}}]),t}();e["default"]=d,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(t,e,i){for(var o=!0;o;){var n=t,s=e,r=i;a=d=h=void 0,o=!1;var a=Object.getOwnPropertyDescriptor(n,s);if(void 0!==a){if("value"in a)return a.value;var h=a.get;return void 0===h?void 0:h.call(r)}var d=Object.getPrototypeOf(n);if(null===d)return void 0;t=d,e=s,i=r,o=!0}},a=i(62),h=o(a),d=function(t){function e(t,i,o,s,a){n(this,e),r(Object.getPrototypeOf(e.prototype),"constructor",this).call(this,t,i,o,s,a),this.isCluster=!0,this.containedNodes={},this.containedEdges={}}return s(e,t),e}(h["default"]);e["default"]=d,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;i0,t.renderTimer=void 0}),this.body.emitter.on("destroy",function(){t.renderRequests=0,t.renderingActive=!1,t.requiresTimeout===!0?clearTimeout(t.renderTimer):cancelAnimationFrame(t.renderTimer),t.body.emitter.off()})}},{key:"setOptions",value:function(t){if(void 0!==t){var e=["hideEdgesOnDrag","hideNodesOnDrag"];s.selectiveDeepExtend(e,this.options,t)}}},{key:"_startRendering",value:function(){this.renderingActive===!0&&void 0===this.renderTimer&&(this.requiresTimeout===!0?this.renderTimer=window.setTimeout(this._renderStep.bind(this),this.simulationInterval):this.renderTimer=window.requestAnimationFrame(this._renderStep.bind(this)))}},{key:"_renderStep",value:function(){this.renderingActive===!0&&(this.renderTimer=void 0,this.requiresTimeout===!0&&this._startRendering(),this._redraw(),this.requiresTimeout===!1&&this._startRendering())}},{key:"redraw",value:function(){this.body.emitter.emit("setSize"),this._redraw()}},{key:"_requestRedraw",value:function(){var t=this;this.redrawRequested!==!0&&this.renderingActive===!1&&this.allowRedrawRequests===!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];this.body.emitter.emit("initRedraw"),this.redrawRequested=!1;var e=this.canvas.frame.canvas.getContext("2d");(0===this.canvas.frame.canvas.width||0===this.canvas.frame.canvas.height)&&this.canvas.setSize(),void 0===this.pixelRatio&&(this.pixelRatio=(window.devicePixelRatio||1)/(e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1)),e.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);var i=this.canvas.frame.canvas.clientWidth,o=this.canvas.frame.canvas.clientHeight;e.clearRect(0,0,i,o),e.save(),e.translate(this.body.view.translation.x,this.body.view.translation.y),e.scale(this.body.view.scale,this.body.view.scale),e.beginPath(),this.body.emitter.emit("beforeDrawing",e),e.closePath(),t===!1&&(this.dragging===!1||this.dragging===!0&&this.options.hideEdgesOnDrag===!1)&&this._drawEdges(e),(this.dragging===!1||this.dragging===!0&&this.options.hideNodesOnDrag===!1)&&this._drawNodes(e,t),this.controlNodesActive===!0&&this._drawControlNodes(e),e.beginPath(),this.body.emitter.emit("afterDrawing",e),e.closePath(),e.restore(),t===!0&&e.clearRect(0,0,i,o)}},{key:"_resizeNodes",value:function(){var t=this.canvas.frame.canvas.getContext("2d");void 0===this.pixelRatio&&(this.pixelRatio=(window.devicePixelRatio||1)/(t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1)),t.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0),t.save(),t.translate(this.body.view.translation.x,this.body.view.translation.y),t.scale(this.body.view.scale,this.body.view.scale);var e=this.body.nodes,i=void 0;for(var o in e)e.hasOwnProperty(o)&&(i=e[o],i.resize(t),i.updateBoundingBox(t));t.restore()}},{key:"_drawNodes",value:function(t){for(var e=void 0===arguments[1]?!1:arguments[1],i=this.body.nodes,o=this.body.nodeIndices,n=void 0,s=[],r=20,a=this.canvas.DOMtoCanvas({x:-r,y:-r}),h=this.canvas.DOMtoCanvas({x:this.canvas.frame.canvas.clientWidth+r,y:this.canvas.frame.canvas.clientHeight+r}),d={top:a.y,left:a.x,bottom:h.y,right:h.x},l=0;l0)for(var r=0;rt.shape.boundingBox.left&&(n=t.shape.boundingBox.left),st.shape.boundingBox.top&&(i=t.shape.boundingBox.top),ot.shape.boundingBox.left&&(n=t.shape.boundingBox.left),st.shape.boundingBox.top&&(i=t.shape.boundingBox.top),o.5*this.body.nodeIndices.length)return void this.fit(i,!1);t=this._getRange(i.nodes);var a=this.body.nodeIndices.length;e=12.662/(a+7.4147)+.0964822;var h=Math.min(this.canvas.frame.canvas.clientWidth/600,this.canvas.frame.canvas.clientHeight/600);e*=h}else{this.body.emitter.emit("_resizeNodes"),t=this._getRange(i.nodes);var d=1.1*Math.abs(t.maxX-t.minX),l=1.1*Math.abs(t.maxY-t.minY),u=this.canvas.frame.canvas.clientWidth/d,c=this.canvas.frame.canvas.clientHeight/l;e=c>=u?u:c}e>1?e=1:0===e&&(e=1);var p=this._findCenter(t),f={position:p,scale:e,animation:i.animation};this.moveTo(f)}},{key:"focus",value:function(t){var e=void 0===arguments[1]?{}:arguments[1];if(void 0!==this.body.nodes[t]){var i={x:this.body.nodes[t].x,y:this.body.nodes[t].y};e.position=i,e.lockedOnNode=t,this.moveTo(e)}else console.log("Node: "+t+" cannot be found.")}},{key:"moveTo",value:function(t){return void 0===t?void(t={}):(void 0===t.offset&&(t.offset={x:0,y:0}),void 0===t.offset.x&&(t.offset.x=0),void 0===t.offset.y&&(t.offset.y=0),void 0===t.scale&&(t.scale=this.body.view.scale),void 0===t.position&&(t.position=this.getViewPosition()),void 0===t.animation&&(t.animation={duration:0}),t.animation===!1&&(t.animation={duration:0}),t.animation===!0&&(t.animation={}),void 0===t.animation.duration&&(t.animation.duration=1e3),void 0===t.animation.easingFunction&&(t.animation.easingFunction="easeInOutQuad"),void this.animateView(t))}},{key:"animateView",value:function(t){if(void 0!==t){this.animationEasingFunction=t.animation.easingFunction,this.releaseNode(),t.locked===!0&&(this.lockedOnNodeId=t.lockedOnNode,this.lockedOnNodeOffset=t.offset),0!=this.easingTime&&this._transitionRedraw(!0),this.sourceScale=this.body.view.scale,this.sourceTranslation=this.body.view.translation,this.targetScale=t.scale,this.body.view.scale=this.targetScale;var e=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight}),i={x:e.x-t.position.x,y:e.y-t.position.y};this.targetTranslation={x:this.sourceTranslation.x+i.x*this.targetScale+t.offset.x,y:this.sourceTranslation.y+i.y*this.targetScale+t.offset.y},0===t.animation.duration?void 0!=this.lockedOnNodeId?(this.viewFunction=this._lockedRedraw.bind(this),this.body.emitter.on("initRedraw",this.viewFunction)):(this.body.view.scale=this.targetScale,this.body.view.translation=this.targetTranslation,this.body.emitter.emit("_requestRedraw")):(this.animationSpeed=1/(60*t.animation.duration*.001)||1/60,this.animationEasingFunction=t.animation.easingFunction,this.viewFunction=this._transitionRedraw.bind(this),this.body.emitter.on("initRedraw",this.viewFunction),this.body.emitter.emit("_startRendering"))}}},{key:"_lockedRedraw",value:function(){var t={x:this.body.nodes[this.lockedOnNodeId].x,y:this.body.nodes[this.lockedOnNodeId].y},e=this.DOMtoCanvas({x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight}),i={x:e.x-t.x,y:e.y-t.y},o=this.body.view.translation,n={x:o.x+i.x*this.body.view.scale+this.lockedOnNodeOffset.x,y:o.y+i.y*this.body.view.scale+this.lockedOnNodeOffset.y};this.body.view.translation=n}},{key:"releaseNode",value:function(){void 0!==this.lockedOnNodeId&&void 0!==this.viewFunction&&(this.body.emitter.off("initRedraw",this.viewFunction),this.lockedOnNodeId=void 0,this.lockedOnNodeOffset=void 0)}},{key:"_transitionRedraw",value:function(){var t=void 0===arguments[0]?!1:arguments[0];this.easingTime+=this.animationSpeed,this.easingTime=t===!0?1:this.easingTime;var e=s.easingFunctions[this.animationEasingFunction](this.easingTime);this.body.view.scale=this.sourceScale+(this.targetScale-this.sourceScale)*e,this.body.view.translation={x:this.sourceTranslation.x+(this.targetTranslation.x-this.sourceTranslation.x)*e,y:this.sourceTranslation.y+(this.targetTranslation.y-this.sourceTranslation.y)*e},this.easingTime>=1&&(this.body.emitter.off("initRedraw",this.viewFunction),this.easingTime=0,void 0!=this.lockedOnNodeId&&(this.viewFunction=this._lockedRedraw.bind(this),this.body.emitter.on("initRedraw",this.viewFunction)),this.body.emitter.emit("animationFinished"))}},{key:"getScale",value:function(){return this.body.view.scale}},{key:"getViewPosition",value:function(){return this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight})}}]),t}();e["default"]=r,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;i50&&(this.drag.pointer=this.getPointer(t.center),this.drag.pinched=!1,this.pinch.scale=this.body.view.scale,this.touchTime=(new Date).valueOf())}},{key:"onTap",value:function(t){var e=this.getPointer(t.center),i=this.selectionHandler.options.multiselect&&(t.changedPointers[0].ctrlKey||t.changedPointers[0].metaKey);this.checkSelectionChanges(e,t,i),this.selectionHandler._generateClickEvent("click",t,e)}},{key:"onDoubleTap",value:function(t){var e=this.getPointer(t.center);this.selectionHandler._generateClickEvent("doubleClick",t,e)}},{key:"onHold",value:function(t){var e=this.getPointer(t.center),i=this.selectionHandler.options.multiselect;this.checkSelectionChanges(e,t,i),this.selectionHandler._generateClickEvent("click",t,e),this.selectionHandler._generateClickEvent("hold",t,e)}},{key:"onRelease",value:function(t){if((new Date).valueOf()-this.touchTime>10){var e=this.getPointer(t.center);this.selectionHandler._generateClickEvent("release",t,e),this.touchTime=(new Date).valueOf()}}},{key:"onContext",value:function(t){var e=this.getPointer({x:t.clientX,y:t.clientY});this.selectionHandler._generateClickEvent("oncontext",t,e)}},{key:"checkSelectionChanges",value:function(t,e){var i=void 0===arguments[2]?!1:arguments[2],o=this.selectionHandler._getSelectedEdgeCount(),n=this.selectionHandler._getSelectedNodeCount(),s=this.selectionHandler.getSelection(),r=void 0;r=i===!0?this.selectionHandler.selectAdditionalOnPoint(t):this.selectionHandler.selectOnPoint(t);var a=this.selectionHandler._getSelectedEdgeCount(),h=this.selectionHandler._getSelectedNodeCount(),d=this.selectionHandler.getSelection(),l=this._determineIfDifferent(s,d),u=l.nodesChanges,c=l.edgesChanges;h-n>0?(this.selectionHandler._generateClickEvent("selectNode",e,t),r=!0):0>h-n?(this.selectionHandler._generateClickEvent("deselectNode",e,t,s),r=!0):h===n&&u===!0&&(this.selectionHandler._generateClickEvent("deselectNode",e,t,s),this.selectionHandler._generateClickEvent("selectNode",e,t),r=!0),a-o>0?(this.selectionHandler._generateClickEvent("selectEdge",e,t),r=!0):0>a-o?(this.selectionHandler._generateClickEvent("deselectEdge",e,t,s),r=!0):a===o&&c===!0&&(this.selectionHandler._generateClickEvent("deselectEdge",e,t,s),this.selectionHandler._generateClickEvent("selectEdge",e,t),r=!0),r===!0&&this.selectionHandler._generateClickEvent("select",e,t)}},{key:"_determineIfDifferent",value:function(t,e){for(var i=!1,o=!1,n=0;nt&&(t=1e-5),t>10&&(t=10);var o=void 0;void 0!==this.drag&&this.drag.dragging===!0&&(o=this.canvas.DOMtoCanvas(this.drag.pointer));var n=this.body.view.translation,s=t/i,r=(1-s)*e.x+n.x*s,a=(1-s)*e.y+n.y*s;if(this.body.view.scale=t,this.body.view.translation={x:r,y:a},void 0!=o){var h=this.canvas.canvasToDOM(o);this.drag.pointer.x=h.x,this.drag.pointer.y=h.y}this.body.emitter.emit("_requestRedraw"),t>i?this.body.emitter.emit("zoom",{direction:"+",scale:this.body.view.scale}):this.body.emitter.emit("zoom",{direction:"-",scale:this.body.view.scale})}}},{key:"onMouseWheel",value:function(t){var e=0;if(t.wheelDelta?e=t.wheelDelta/120:t.detail&&(e=-t.detail/3),0!==e){var i=this.body.view.scale,o=e/10;0>e&&(o/=1-o),i*=1+o;var n=this.getPointer({x:t.clientX,y:t.clientY});this.zoom(i,n)}t.preventDefault()}},{key:"onMouseMove",value:function(t){var e=this,i=this.getPointer({x:t.clientX,y:t.clientY}),o=!1;if(void 0!==this.popup&&(this.popup.hidden===!1&&this._checkHidePopup(i),this.popup.hidden===!1&&(o=!0,this.popup.setPosition(i.x+3,i.y-5),this.popup.show())),this.options.keyboard.bindToWindow===!1&&this.options.keyboard.enabled===!0&&this.canvas.frame.focus(),o===!1&&(void 0!==this.popupTimer&&(clearInterval(this.popupTimer),this.popupTimer=void 0),this.drag.dragging||(this.popupTimer=setTimeout(function(){return e._checkShowPopup(i)},this.options.tooltipDelay))),this.options.hover===!0){var n=this.selectionHandler.getNodeAt(i);void 0===n&&(n=this.selectionHandler.getEdgeAt(i)),this.selectionHandler.hoverObject(n)}}},{key:"_checkShowPopup",value:function(t){var e=this.canvas._XconvertDOMtoCanvas(t.x),i=this.canvas._YconvertDOMtoCanvas(t.y),o={left:e,top:i,right:e,bottom:i},n=void 0===this.popupObj?void 0:this.popupObj.id,s=!1,r="node";if(void 0===this.popupObj){for(var a=this.body.nodeIndices,h=this.body.nodes,l=void 0,u=[],c=0;c0&&(this.popupObj=h[u[u.length-1]],s=!0)}if(void 0===this.popupObj&&s===!1){for(var p=this.body.edgeIndices,f=this.body.edges,m=void 0,v=[],c=0;c0&&(this.popupObj=f[v[v.length-1]],r="edge")}void 0!==this.popupObj?this.popupObj.id!==n&&(void 0===this.popup&&(this.popup=new d["default"](this.canvas.frame)),this.popup.popupTargetType=r,this.popup.popupTargetId=this.popupObj.id,this.popup.setPosition(t.x+3,t.y-5),this.popup.setText(this.popupObj.getTitle()),this.popup.show(),this.body.emitter.emit("showPopup",this.popupObj.id)):void 0!==this.popup&&(this.popup.hide(), -this.body.emitter.emit("hidePopup"))}},{key:"_checkHidePopup",value:function(t){var e=this.selectionHandler._pointerToPositionObject(t),i=!1;if("node"===this.popup.popupTargetType){if(void 0!==this.body.nodes[this.popup.popupTargetId]&&(i=this.body.nodes[this.popup.popupTargetId].isOverlappingWith(e),i===!0)){var o=this.selectionHandler.getNodeAt(t);i=o.id===this.popup.popupTargetId}}else void 0===this.selectionHandler.getNodeAt(t)&&void 0!==this.body.edges[this.popup.popupTargetId]&&(i=this.body.edges[this.popup.popupTargetId].isOverlappingWith(e));i===!1&&(this.popupObj=void 0,this.popup.hide(),this.body.emitter.emit("hidePopup"))}}]),t}();e["default"]=u,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;i700&&(this.body.emitter.emit("fit",{duration:700}),this.touchTime=(new Date).valueOf())}},{key:"_stopMovement",value:function(){for(var t in this.boundFunctions)this.boundFunctions.hasOwnProperty(t)&&(this.body.emitter.off("initRedraw",this.boundFunctions[t]),this.body.emitter.emit("_stopRendering"));this.boundFunctions={}}},{key:"_moveUp",value:function(){this.body.view.translation.y+=this.options.keyboard.speed.y}},{key:"_moveDown",value:function(){this.body.view.translation.y-=this.options.keyboard.speed.y}},{key:"_moveLeft",value:function(){this.body.view.translation.x+=this.options.keyboard.speed.x}},{key:"_moveRight",value:function(){this.body.view.translation.x-=this.options.keyboard.speed.x}},{key:"_zoomIn",value:function(){this.body.view.scale*=1+this.options.keyboard.speed.zoom}},{key:"_zoomOut",value:function(){this.body.view.scale/=1+this.options.keyboard.speed.zoom}},{key:"configureKeyboardBindings",value:function(){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()); -})}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.add(t),i.selectionHandler.unselectAll(),i.showManipulatorToolbar())})}else this.body.data.edges.add(o),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}},{key:"_performEditEdge",value:function(t,e){var i=this,o={id:this.edgeBeingEditedId,from:t,to:e};if("function"==typeof this.options.editEdge){if(2!==this.options.editEdge.length)throw new Error("The function for edit does not support two arguments (data, callback)");this.options.editEdge(o,function(t){null===t||void 0===t||"editEdge"!==i.inMode?(i.body.edges[o.id].updateEdgeType(),i.body.emitter.emit("_redraw")):(i.body.data.edges.update(t),i.selectionHandler.unselectAll(),i.showManipulatorToolbar())})}else this.body.data.edges.update(o),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}}]),t}();e["default"]=h,t.exports=e["default"]},function(t,e){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"},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"},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,physics:!0,scaling:{min:[10,0,200,1],max:[30,0,200,1],label:{enabled:!1,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},shadow:{enabled:!1,size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},shape:["ellipse","box","circle","database","diamond","dot","square","star","text","triangle","triangleDown"],size:[25,0,200,1]},edges:{arrows:{to:{enabled:!1,scaleFactor:[1,0,3,.05]},middle:{enabled:!1,scaleFactor:[1,0,3,.05]},from:{enabled:!1,scaleFactor:[1,0,3,.05]}},color:{color:["color","#848484"],highlight:["color","#848484"],hover:["color","#848484"],inherit:["from","to","both",!0,!1],opacity:[1,0,1,.05]},dashes:!1,font:{color:["color","#343434"],size:[14,0,100,1],face:["arial","verdana","tahoma"],background:["color","none"],strokeWidth:[2,0,50,1],strokeColor:["color","#ffffff"],align:["horizontal","top","middle","bottom"]},hidden:!1,hoverWidth:[1.5,0,5,.1],physics:!0,scaling:{min:[1,0,100,1],max:[15,0,100,1],label:{enabled:!0,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},selectionWidth:[1.5,0,5,.1],selfReferenceSize:[20,0,200,1],shadow:{enabled:!1,size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},smooth:{enabled:!0,type:["dynamic","continuous","discrete","diagonalCross","straightCross","horizontal","vertical","curvedCW","curvedCCW"],roundness:[.5,0,1,.05]},width:[1,0,30,1]},layout:{hierarchical:{enabled:!1,levelSeparation:[150,20,500,5],direction:["UD","DU","LR","RL"],sortMethod:["hubsize","directed"]}},interaction:{dragNodes:!0,dragView:!0,hideEdgesOnDrag:!1,hideNodesOnDrag:!1,hover:!1,keyboard:{enabled:!1,speed:{x:[10,0,40,1],y:[10,0,40,1],zoom:[.02,0,.1,.005]},bindToWindow:!0},multiselect:!1,navigationButtons:!1,selectable:!0,selectConnectedEdges:!0,hoverConnectedEdges:!0,tooltipDelay:[300,0,1e3,25],zoomView:!0},manipulation:{enabled:!1,initiallyActive:!1},physics:{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;ai;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(3)},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++)Fi[o[e]]?o[e]=Fi[o[e]]:o[e]=z(o[e]);return function(n){var s="";for(e=0;i>e;e++)s+=o[e]instanceof Function?o[e].call(n,t):o[e];return s}}function L(t,e){return t.isValid()?(e=B(e,t.localeData()),Ri[e]||(Ri[e]=A(e)),Ri[e](t)):t.localeData().invalidDate()}function B(t,e){function i(t){return e.longDateFormat(t)||t}var o=5;for(Bi.lastIndex=0;o>=0&&Bi.test(t);)t=t.replace(Bi,i),Bi.lastIndex=0,o-=1;return t}function R(t,e,i){to[t]="function"==typeof e?e:function(t){return t&&i?i:e}}function F(t,e){return r(to,t)?to[t](e._strict,e._locale):new RegExp(j(t))}function j(t){return t.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(t,e,i,o,n){return e||i||o||n}).replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function H(t,e){var i,o=e;for("string"==typeof t&&(t=[t]),"number"==typeof e&&(o=function(t,i){i[e]=v(t)}),i=0;io;o++){if(n=h([2e3,o]),i&&!this._longMonthsParse[o]&&(this._longMonthsParse[o]=new RegExp("^"+this.months(n,"").replace(".","")+"$","i"),this._shortMonthsParse[o]=new RegExp("^"+this.monthsShort(n,"").replace(".","")+"$","i")),i||this._monthsParse[o]||(s="^"+this.months(n,"")+"|^"+this.monthsShort(n,""),this._monthsParse[o]=new RegExp(s.replace(".",""),"i")),i&&"MMMM"===e&&this._longMonthsParse[o].test(t))return o;if(i&&"MMM"===e&&this._shortMonthsParse[o].test(t))return o;if(!i&&this._monthsParse[o].test(t))return o}}function X(t,e){var i;return"string"==typeof e&&(e=t.localeData().monthsParse(e),"number"!=typeof e)?t:(i=Math.min(t.date(),G(t.year(),e)),t._d["set"+(t._isUTC?"UTC":"")+"Month"](e,i),t)}function Z(t){return null!=t?(X(this,t),e.updateOffset(this,!0),this):E(this,"Month")}function 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),Fi[s]?(o?l(t).empty=!1:l(t).unusedTokens.push(s),W(s,o,t)):t._strict&&!o&&l(t).unusedTokens.push(s);l(t).charsLeftOver=h-d,a.length>0&&l(t).unusedInput.push(a),l(t).bigHour===!0&&t._a[so]<=12&&t._a[so]>0&&(l(t).bigHour=void 0),t._a[so]=_t(t._locale,t._a[so],t._meridiem),yt(t),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 Rt(t,e){return null!=t?("string"!=typeof t&&(t=-t),this.utcOffset(t,e),this):-this.utcOffset()}function Ft(t){return this.utcOffset(0,t)}function jt(t){return this._isUTC&&(this.utcOffset(0,t),this._isUTC=!1,t&&this.subtract(Lt(this),"m")),this}function Ht(){return this._tzm?this.utcOffset(this._tzm):"string"==typeof this._i&&this.utcOffset(zt(this._i)),this}function Yt(t){return t=t?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 Fe(t){var e=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=t?(t=ze(t,this.localeData()),this.add(t-e,"d")):e}function je(t){var e=(this.day()+7-this.localeData()._week.dow)%7;return null==t?e:this.add(t-e,"d")}function He(t){return null==t?this.day()||7:this.day(this.day()%7?t:t-7)}function Ye(t,e){N(t,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),e)})}function We(t,e){return e._meridiemParse}function Ge(t){return"p"===(t+"").toLowerCase().charAt(0)}function Ue(t,e,i){return t>11?i?"pm":"PM":i?"am":"AM"}function Ve(t){N(0,[t,3],0,"millisecond")}function qe(){return this._isUTC?"UTC":""}function Xe(){return this._isUTC?"Coordinated Universal Time":""}function Ze(t){return 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,Ri={},Fi={},ji=/\d/,Hi=/\d\d/,Yi=/\d{3}/,Wi=/\d{4}/,Gi=/[+-]?\d{6}/,Ui=/\d\d?/,Vi=/\d{1,3}/,qi=/\d{1,4}/,Xi=/[+-]?\d{1,6}/,Zi=/\d+/,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"),R("M",Ui),R("MM",Ui,Hi),R("MMM",$i),R("MMMM",$i),H(["M","MM"],function(t,e){e[oo]=v(t)-1}),H(["MMM","MMMM"],function(t,e,i,o){var n=i._locale.monthsParse(t,o,i._strict);null!=n?e[oo]=n:l(i).invalidMonth=t});var lo="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),uo="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),co={};e.suppressDeprecationWarnings=!1;var po=/^\s*(?:[+-]\d{6}|\d{4})-(?:(\d\d-\d\d)|(W\d\d$)|(W\d\d-\d)|(\d\d\d))((T| )(\d\d(:\d\d(:\d\d(\.\d+)?)?)?)?([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,fo=[["YYYYYY-MM-DD",/[+-]\d{6}-\d{2}-\d{2}/],["YYYY-MM-DD",/\d{4}-\d{2}-\d{2}/],["GGGG-[W]WW-E",/\d{4}-W\d{2}-\d/],["GGGG-[W]WW",/\d{4}-W\d{2}/],["YYYY-DDD",/\d{4}-\d{3}/]],mo=[["HH:mm:ss.SSSS",/(T| )\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss",/(T| )\d\d:\d\d:\d\d/],["HH:mm",/(T| )\d\d:\d\d/],["HH",/(T| )\d\d/]],vo=/^\/?Date\((\-?\d+)/i;e.createFromInputFallback=$("moment construction falls back to js Date. This is discouraged and will be removed in upcoming major release. Please refer to https://github.com/moment/moment/issues/1407 for more info.",function(t){t._d=new Date(t._i+(t._useUTC?" UTC":""))}),N(0,["YY",2],0,function(){return this.year()%100}),N(0,["YYYY",4],0,"year"),N(0,["YYYYY",5],0,"year"),N(0,["YYYYYY",6,!0],0,"year"),O("year","y"),R("Y",Ji),R("YY",Ui,Hi),R("YYYY",qi,Wi),R("YYYYY",Xi,Gi),R("YYYYYY",Xi,Gi),H(["YYYY","YYYYY","YYYYYY"],io),H("YY",function(t,i){i[io]=e.parseTwoDigitYear(t)}),e.parseTwoDigitYear=function(t){return v(t)+(v(t)>68?1900:2e3)};var go=T("FullYear",!1);N("w",["ww",2],"wo","week"),N("W",["WW",2],"Wo","isoWeek"),O("week","w"),O("isoWeek","W"),R("w",Ui),R("ww",Ui,Hi),R("W",Ui),R("WW",Ui,Hi),Y(["w","ww","W","WW"],function(t,e,i,o){e[o.substr(0,1)]=v(t)});var yo={dow:0,doy:6};N("DDD",["DDDD",3],"DDDo","dayOfYear"),O("dayOfYear","DDD"),R("DDD",Vi),R("DDDD",Yi),H(["DDD","DDDD"],function(t,e,i){i._dayOfYear=v(t)}),e.ISO_8601=function(){};var bo=$("moment().min is deprecated, use moment.min instead. https://github.com/moment/moment/issues/1548",function(){var t=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",""),R("Z",Ki),R("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"),R("G",Ji),R("g",Ji),R("GG",Ui,Hi),R("gg",Ui,Hi),R("GGGG",qi,Wi),R("gggg",qi,Wi),R("GGGGG",Xi,Gi),R("ggggg",Xi,Gi),Y(["gggg","ggggg","GGGG","GGGGG"],function(t,e,i,o){e[o.substr(0,2)]=v(t)}),Y(["gg","GG"],function(t,i,o,n){i[n]=e.parseTwoDigitYear(t)}),N("Q",0,0,"quarter"),O("quarter","Q"),R("Q",ji),H("Q",function(t,e){e[oo]=3*(v(t)-1)}),N("D",["DD",2],"Do","date"),O("date","D"),R("D",Ui),R("DD",Ui,Hi),R("Do",function(t,e){return t?e._ordinalParse:e._ordinalParseLenient}),H(["D","DD"],no),H("Do",function(t,e){e[no]=v(t.match(Ui)[0],10)});var 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"),R("d",Ui),R("e",Ui),R("E",Ui),R("dd",$i),R("ddd",$i),R("dddd",$i),Y(["dd","ddd","dddd"],function(t,e,i){var o=i._locale.weekdaysParse(t);null!=o?e.d=o:l(i).invalidWeekday=t}),Y(["d","e","E"],function(t,e,i,o){e[o]=v(t)});var 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"),R("a",We),R("A",We),R("H",Ui),R("h",Ui),R("HH",Ui,Hi),R("hh",Ui,Hi),H(["H","HH"],so),H(["a","A"],function(t,e,i){i._isPm=i._locale.isPM(t),i._meridiem=t}),H(["h","hh"],function(t,e,i){e[so]=v(t),l(i).bigHour=!0});var Po=/[ap]\.?m?\.?/i,Io=T("Hours",!0);N("m",["mm",2],0,"minute"),O("minute","m"),R("m",Ui),R("mm",Ui,Hi),H(["m","mm"],ro);var No=T("Minutes",!1);N("s",["ss",2],0,"second"),O("second","s"),R("s",Ui),R("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"),R("S",Vi,ji),R("SS",Vi,Hi),R("SSS",Vi,Yi),R("SSSS",Zi),H(["S","SS","SSS","SSSS"],function(t,e){e[ho]=v(1e3*("0."+t))});var Ao=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=Fe,Lo.weekday=je,Lo.isoWeekday=He,Lo.dayOfYear=mt,Lo.hour=Lo.hours=Io,Lo.minute=Lo.minutes=No,Lo.second=Lo.seconds=zo,Lo.millisecond=Lo.milliseconds=Ao,Lo.utcOffset=Bt,Lo.utc=Ft,Lo.local=jt,Lo.parseZone=Ht,Lo.hasAlignedHourOffset=Yt,Lo.isDST=Wt,Lo.isDSTShifted=Gt,Lo.isLocal=Ut,Lo.isUtcOffset=Vt,Lo.isUtc=qt,Lo.isUTC=qt,Lo.zoneAbbr=qe,Lo.zoneName=Xe,Lo.dates=$("dates accessor is deprecated. Use date instead.",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",Rt);var Bo=Lo,Ro={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},Fo={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY LT",LLLL:"dddd, MMMM D, YYYY LT"},jo="Invalid date",Ho="%d",Yo=/\d{1,2}/,Wo={future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},Go=y.prototype;Go._calendar=Ro,Go.calendar=Ke,Go._longDateFormat=Fo,Go.longDateFormat=Qe,Go._invalidDate=jo,Go.invalidDate=$e,Go._ordinal=Ho,Go.ordinal=ti,Go._ordinalParse=Yo,Go.preparse=ei,Go.postformat=ei,Go._relativeTime=Wo,Go.relativeTime=ii,Go.pastFuture=oi,Go.set=ni,Go.months=U,Go._months=lo,Go.monthsShort=V,Go._monthsShort=uo,Go.monthsParse=q,Go.week=dt,Go._week=yo,Go.firstDayOfYear=ut,Go.firstDayOfWeek=lt,Go.weekdays=Ae,Go._weekdays=To,Go.weekdaysMin=Be,Go._weekdaysMin=So,Go.weekdaysShort=Le,Go._weekdaysShort=Eo,Go.weekdaysParse=Re,Go.isPM=Ge,Go._meridiemParse=Po,Go.meridiem=Ue,x("en",{ordinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(t){var e=t%10,i=1===v(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th";return t+i}}),e.lang=$("moment.lang is deprecated. Use moment.locale instead.",x),e.langData=$("moment.langData is deprecated. Use moment.localeData instead.",M);var Uo=Math.abs,Vo=_i("ms"),qo=_i("s"),Xo=_i("m"),Zo=_i("h"),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"),R("x",Ji),R("X",Qi),H("X",function(t,e,i){i._d=new Date(1e3*parseFloat(t,10))}),H("x",function(t,e,i){i._d=new Date(v(t))}),e.version="2.10.3",i(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(4)(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=5},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.options.drawPoints.style?(a=e.getSVGElement("circle",n,s),a.setAttributeNS(null,"cx",t),a.setAttributeNS(null,"cy",i),a.setAttributeNS(null,"r",.5*o.options.drawPoints.size)):(a=e.getSVGElement("rect",n,s),a.setAttributeNS(null,"x",t-.5*o.options.drawPoints.size),a.setAttributeNS(null,"y",i-.5*o.options.drawPoints.size),a.setAttributeNS(null,"width",o.options.drawPoints.size),a.setAttributeNS(null,"height",o.options.drawPoints.size)),void 0!==o.options.drawPoints.styles&&a.setAttributeNS(null,"style",o.group.options.drawPoints.styles),a.setAttributeNS(null,"class",o.className+" vis-point"),r){var h=e.getSVGElement("text",n,s);r.xOffset&&(t+=r.xOffset),r.yOffset&&(i+=r.yOffset),r.content&&(h.textContent=r.content),r.className&&h.setAttributeNS(null,"class",r.className+" vis-label"),h.setAttributeNS(null,"x",t),h.setAttributeNS(null,"y",i)}return a},e.drawBar=function(t,i,o,n,s,r,a,h){if(0!=n){0>n&&(n*=-1,i-=n);var d=e.getSVGElement("rect",r,a);d.setAttributeNS(null,"x",t-.5*o),d.setAttributeNS(null,"y",i),d.setAttributeNS(null,"width",o),d.setAttributeNS(null,"height",n),d.setAttributeNS(null,"class",s),h&&d.setAttributeNS(null,"style",h)}}},function(t,e,i){function o(t,e){if(t&&!Array.isArray(t)&&(e=t,t=null),this._options=e||{},this._data={},this.length=0,this._fieldId=this._options.fieldId||"id",this._type={},this._options.type)for(var i in this._options.type)if(this._options.type.hasOwnProperty(i)){var o=this._options.type[i];"Date"==o||"ISODate"==o||"ASPDate"==o?this._type[i]="Date":this._type[i]=o}if(this._options.convert)throw new Error('Option "convert" is deprecated. Use "type" instead.');this._subscribers={},t&&this.add(t),this.setOptions(e)}var n=i(1),s=i(9);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(1),s=i(8);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(13),a=i(8),h=i(10),d=i(1),l=i(14),u=i(12),c=i(15),p=i(16),f=i(17),m=i(18);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(14);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(10);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(13),i(23),i(1)),s=i(8),r=i(10),a=i(27),h=i(30),d=i(41),l=i(20),u=i(44),c=i(31),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(1),s=i(21),r=i(2),a=i(22);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){if("undefined"!=typeof window){var o=i(24),n=window.Hammer||i(25);t.exports=o(n,{preventDefault:"mouse"})}else t.exports=function(){throw Error("hammer.js is only available in a browser, not in node.js.")}},function(t,e,i){var o,n,s;!function(i){n=[],o=i,s="function"==typeof o?o.apply(e,n):o,!(void 0!==s&&(t.exports=s))}(function(){var t=null;return function e(i,o){function n(t){return t.match(/[^ ]+/g)}function s(e){if("hammer.input"!==e.type){if(e.srcEvent._handled||(e.srcEvent._handled={}),e.srcEvent._handled[e.type])return;e.srcEvent._handled[e.type]=!0}var i=!1;e.stopPropagation=function(){i=!0},e.firstTarget=t;for(var o=t;o&&!i;){var n=o.hammer&&o.hammer._handlers[e.type];if(n)for(var s=0;s0?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=F(a,h),e.distance=R(a,h),I(i,e),e.offsetDirection=B(e.deltaX,e.deltaY),e.scale=r?H(r.pointers,o):1,e.rotation=r?j(r.pointers,o):0,N(i,e);var d=t.element;b(e.srcEvent.target,d)&&(d=e.srcEvent.target),e.target=d}function I(t,e){var i=e.center,o=t.offsetDelta||{},n=t.prevDelta||{},s=t.prevInput||{};(e.eventType===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 R(t,e,i){i||(i=jt);var o=e[i[0]]-t[i[0]],n=e[i[1]]-t[i[1]];return Math.sqrt(o*o+n*n)}function F(t,e,i){i||(i=jt);var o=e[i[0]]-t[i[0]],n=e[i[1]]-t[i[1]];return 180*Math.atan2(n,o)/Math.PI}function j(t,e){return F(e[1],e[0],Ht)-F(t[1],t[0],Ht)}function H(t,e){return R(e[0],e[1],Ht)/R(t[0],t[1],Ht)}function Y(){this.evEl=Wt,this.evWin=Gt,this.allow=!0,this.pressed=!1,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&Rt?this.preventSrc(e):void 0}},preventSrc:function(t){this.manager.session.prevented=!0,t.preventDefault()}};var he=1,de=2,le=4,ue=8,ce=ue,pe=16,fe=32;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|Rt,pointers:1},getTouchAction:function(){return it.prototype.getTouchAction.call(this)},attrTest:function(t){var e,i=this.options.direction;return i&(Bt|Rt)?e=t.velocity:i&Bt?e=t.velocityX:i&Rt&&(e=t.velocityY),this._super.attrTest.call(this,t)&&i&t.direction&&t.distance>this.options.threshold&&vt(e)>this.options.velocity&&t.eventType&St},emit:function(t){var e=$(t.direction);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)}}),p(at,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.distanceu,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(23);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(2);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(13),s=i(23),r=i(28),a=i(1),h=(i(8),i(10),i(27),i(31),i(41)),d=i(42),l=i(29),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.listeners={};var o=["tap","doubletap","press","pinch","pan","panstart","panmove","panend"];if(o.forEach(function(t){var e=function(e){i.isActive()&&i.emit(t,e)};i.hammer.on(t,e),i.listeners[t]=e}),r.onTouch(this.hammer,function(t){i.emit("touch",t)}.bind(this)),r.onRelease(this.hammer,function(t){i.emit("release",t)}.bind(this)),this.dom.root.addEventListener("mousewheel",e),this.dom.root.addEventListener("DOMMouseScroll",e),this.props={root:{},background:{},centerContainer:{},leftContainer:{},rightContainer:{},center:{},left:{},right:{},top:{},bottom:{},border:{},scrollTop:0,scrollTopMin:0},this.customTimes=[],this.touch={},this.redrawCount=0,!t)throw new Error("No container provided");t.appendChild(this.dom.root)},o.prototype.setOptions=function(t){if(t){var e=["width","height","minHeight","maxHeight","autoResize","start","end","clickToUse","dataAttributes","hiddenDates"];if(a.selectiveExtend(e,this.options,t),"orientation"in t&&("string"==typeof t.orientation?this.options.orientation={item:t.orientation,axis:t.orientation}:"object"==typeof t.orientation&&("item"in t.orientation&&(this.options.orientation.item=t.orientation.item),"axis"in t.orientation&&(this.options.orientation.axis=t.orientation.axis))),"both"===this.options.orientation.axis){if(!this.timeAxis2){var i=this.timeAxis2=new h(this.body);i.setOptions=function(t){var e=t?a.extend({},t):{};e.orientation="top",h.prototype.setOptions.call(i,e)},this.components.push(i)}}else if(this.timeAxis2){var o=this.components.indexOf(this.timeAxis2);-1!==o&&this.components.splice(o,1),this.timeAxis2.destroy(),this.timeAxis2=null}if("hiddenDates"in this.options&&l.convertHiddenOptions(this.body,this.options.hiddenDates),"clickToUse"in t&&(t.clickToUse?this.activator||(this.activator=new d(this.dom.root)):this.activator&&(this.activator.destroy(),delete this.activator)),"showCustomTime"in t)throw new Error("Option `showCustomTime` is deprecated. Create a custom time bar via timeline.addCustomTime(time [, id])");this._initAutoResize()}if(this.components.forEach(function(e){return e.setOptions(t)}),"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(23),i(35));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){this.id=null,this.parent=null,this.data=t,this.dom=null,this.conversion=e||{},this.options=i||{},this.selected=!1,this.displayed=!1,this.dirty=!0,this.top=null,this.left=null,this.width=null,this.height=null,this.editable=null,this.data&&this.data.hasOwnProperty("editable")&&"boolean"==typeof this.data.editable&&(this.editable=t.editable)}var n=i(23),s=i(1);o.prototype.stack=!0,o.prototype.select=function(){this.selected=!0,this.dirty=!0,this.displayed&&this.redraw()},o.prototype.unselect=function(){this.selected=!1,this.dirty=!0,this.displayed&&this.redraw()},o.prototype.setData=function(t){var e=void 0!=t.group&&this.data.group!=t.group;e&&this.parent.itemSet._moveToGroup(this,t.group),t.hasOwnProperty("editable")&&"boolean"==typeof t.editable&&(this.editable=t.editable),this.data=t,this.dirty=!0,this.displayed&&this.redraw()},o.prototype.setParent=function(t){this.displayed?(this.hide(),this.parent=t,this.parent&&this.show()):this.parent=t},o.prototype.isVisible=function(t){return!1},o.prototype.show=function(){return!1},o.prototype.hide=function(){return!1},o.prototype.redraw=function(){},o.prototype.repositionX=function(){},o.prototype.repositionY=function(){},o.prototype._repaintDeleteButton=function(t){var e=(this.options.editable.remove||this.data.editable===!0)&&this.data.editable!==!1;if(this.selected&&e&&!this.dom.deleteButton){var i=this,o=document.createElement("div");o.className="vis-delete",o.title="Delete this item",new n(o).on("tap",function(t){t.stopPropagation(),i.parent.removeFromDataSet(i)}),t.appendChild(o),this.dom.deleteButton=o}else!this.selected&&this.dom.deleteButton&&(this.dom.deleteButton.parentNode&&this.dom.deleteButton.parentNode.removeChild(this.dom.deleteButton),this.dom.deleteButton=null)},o.prototype._updateContents=function(t){var e;if(this.options.template){var i=this.parent.itemSet.itemsData.get(this.id);e=this.options.template(i)}else e=this.data.content;var o=this._contentToString(this.content)!==this._contentToString(e);if(o){if(e instanceof Element)t.innerHTML="",t.appendChild(e);else if(void 0!=e)t.innerHTML=e;else if("background"!=this.data.type||void 0!==this.data.content)throw new Error('Property "content" missing in item '+this.id);this.content=e}},o.prototype._updateTitle=function(t){null!=this.data.title?t.title=this.data.title||"":t.removeAttribute("vis-title")},o.prototype._updateDataAttributes=function(t){if(this.options.dataAttributes&&this.options.dataAttributes.length>0){var e=[];if(Array.isArray(this.options.dataAttributes))e=this.options.dataAttributes;else{if("all"!=this.options.dataAttributes)return;e=Object.keys(this.data)}for(var i=0;i0?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(1),i(32));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(35);i(1);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-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(1),s=i(21),r=i(36),a=i(29),h=i(2);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(13),a=i(23),h=i(1);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?i-1:0),n=1;i>n;n++)o[n-1]=arguments[n];this.allowCreation===!0&&!function(){var i=document.createElement("div");i.className="vis-network-configuration item s"+t.length,o.forEach(function(t){i.appendChild(t)}),e.domElements.push(i)}()}},{key:"_makeHeader",value:function(t){var e=document.createElement("div");e.className="vis-network-configuration header",e.innerHTML=t,this._makeItem([],e)}},{key:"_makeLabel",value:function(t,e){var i=void 0===arguments[2]?!1:arguments[2],o=document.createElement("div");return o.className="vis-network-configuration label s"+e.length,i===!0?o.innerHTML=""+t+":":o.innerHTML=t+":",o}},{key:"_makeDropdown",value:function(t,e,i){var o=document.createElement("select");o.className="vis-network-configuration select";var n=0;void 0!==e&&-1!==t.indexOf(e)&&(n=t.indexOf(e));for(var s=0;se&&n>2*e?a.min=2*e:n>.1*e&&(a.min=e/10),2*e>s&&1!==s&&(a.max=2*e),a.value=e):a.value=o;var 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)+""}}]),t}();e["default"]=d,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;is;s++)for(r=0;rp?p+1:p;var f=l/this.r,m=a.RGBToHSV(this.color.r,this.color.g,this.color.b);m.h=p,m.s=f;var v=a.HSVToRGB(m.h,m.s,m.v);v.a=this.color.a,this.color=v,this.initialColorDiv.style.backgroundColor="rgba("+this.initialColor.r+","+this.initialColor.g+","+this.initialColor.b+","+this.initialColor.a+")",this.newColorDiv.style.backgroundColor="rgba("+this.color.r+","+this.color.g+","+this.color.b+","+this.color.a+")"}}]),t}();e["default"]=h,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;is.distance?console.log('%cUnknown option detected: "'+e+'" in '+t.printLocation(n.path,e,"")+"Perhaps it was misplaced? Matching option found at: "+t.printLocation(s.path,s.closestMatch,""),h):n.distance<=d?console.log('%cUnknown option detected: "'+e+'". Did you mean "'+n.closestMatch+'"?'+t.printLocation(n.path,e),h):console.log('%cUnknown option detected: "'+e+'". Did you mean one of these: '+t.print(Object.keys(i))+t.printLocation(o,e),h),r=!0}},{key:"findInOptions",value:function(e,i,o){var n=void 0===arguments[3]?!1:arguments[3],r=1e9,a="",h=[],d=e.toLowerCase(),l=void 0;for(var u in i){var c=void 0;if(void 0!==i[u].__type__&&n===!0){var p=t.findInOptions(e,i[u],s.copyAndExtendArray(o,u));r>p.distance&&(a=p.closestMatch,h=p.path,r=p.distance,l=p.indexMatch)}else-1!==u.toLowerCase().indexOf(d)&&(l=u),c=t.levenshteinDistance(e,u),r>c&&(a=u,h=s.copyArray(o),r=c)}return{closestMatch:a,path:h,distance:r,indexMatch:l}}},{key:"printLocation",value:function(t,e){for(var i=void 0===arguments[2]?"Problem value found at: \n":arguments[2],o="\n\n"+i+"options = {\n",n=0;ns;s++)o+=" ";o+=t[n]+": {\n"}for(var s=0;sr?r:t,e=null==e?r:r>e?r:e}return{min:null!=t?new Date(t):null,max:null!=e?new Date(e):null}},o.prototype.getEventProperties=function(t){var e=t.center?t.center.x:t.clientX,i=t.center?t.center.y:t.clientY,o=e-n.getAbsoluteLeft(this.dom.centerContainer),s=i-n.getAbsoluteTop(this.dom.centerContainer),r=this._toTime(o),a=u.customTimeFromTarget(t),h=n.getTarget(t),d=null;n.hasParent(h,this.timeAxis.dom.foreground)?d="axis":this.timeAxis2&&n.hasParent(h,this.timeAxis2.dom.foreground)?d="axis":n.hasParent(h,this.linegraph.yAxisLeft.dom.frame)?d="data-axis":n.hasParent(h,this.linegraph.yAxisRight.dom.frame)?d="data-axis":n.hasParent(h,this.linegraph.legendLeft.dom.frame)?d="legend":n.hasParent(h,this.linegraph.legendRight.dom.frame)?d="legend":null!=a?d="custom-time":n.hasParent(h,this.currentTime.bar)?d="current-time":n.hasParent(h,this.dom.center)&&(d="background");var l=[],c=this.linegraph.yAxisLeft,p=this.linegraph.yAxisRight;return c.hidden||l.push(c.screenToValue(s)),p.hidden||l.push(p.screenToValue(s)),{event:t,what:d,pageX:t.srcEvent?t.srcEvent.pageX:t.pageX,pageY:t.srcEvent?t.srcEvent.pageY:t.pageY,x:o,y:s,time:r,value:l}},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(1),s=i(7),r=i(8),a=i(10),h=i(21),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(1),s=i(7),r=i(54),a=i(56),h=i(55);o.prototype.setItems=function(t){null!=t?(this.itemsData=t,1==this.options.sort&&this.itemsData.sort(function(t,e){return t.x-e.x})):this.itemsData=[]},o.prototype.setZeroPosition=function(t){this.zeroPosition=t},o.prototype.setOptions=function(t){if(void 0!==t){var e=["sampling","style","sort","yAxisOrientation","barChart"];n.selectiveDeepExtend(e,this.options,t),n.mergeOptions(this.options,t,"interpolation"),n.mergeOptions(this.options,t,"drawPoints"),n.mergeOptions(this.options,t,"shaded"),t.interpolation&&"object"==typeof t.interpolation&&t.interpolation.parametrization&&("uniform"==t.interpolation.parametrization?this.options.interpolation.alpha=0:"chordal"==t.interpolation.parametrization?this.options.interpolation.alpha=1:(this.options.interpolation.parametrization="centripetal",this.options.interpolation.alpha=.5))}"line"==this.options.style?this.type=new r(this.id,this.options):"bar"==this.options.style?this.type=new a(this.id,this.options):"points"==this.options.style&&(this.type=new h(this.id,this.options))},o.prototype.update=function(t){this.group=t,this.content=t.content||"graph",this.className=t.className||this.className||"vis-graph-group"+this.groupsUsingDefaultStyles[0]%10,this.visible=void 0===t.visible?!0:t.visible,this.style=t.style,this.setOptions(t.options)},o.prototype.drawIcon=function(t,e,i,o,n,r){var a,h,d=.5*r,l=s.getSVGElement("rect",i,o);if(l.setAttributeNS(null,"x",t),l.setAttributeNS(null,"y",e-d),l.setAttributeNS(null,"width",n),l.setAttributeNS(null,"height",2*d),l.setAttributeNS(null,"class","vis-outline"),"line"==this.options.style)a=s.getSVGElement("path",i,o),a.setAttributeNS(null,"class",this.className),void 0!==this.style&&a.setAttributeNS(null,"style",this.style),a.setAttributeNS(null,"d","M"+t+","+e+" L"+(t+n)+","+e),1==this.options.shaded.enabled&&(h=s.getSVGElement("path",i,o),"top"==this.options.shaded.orientation?h.setAttributeNS(null,"d","M"+t+", "+(e-d)+"L"+t+","+e+" L"+(t+n)+","+e+" L"+(t+n)+","+(e-d)):h.setAttributeNS(null,"d","M"+t+","+e+" L"+t+","+(e+d)+" L"+(t+n)+","+(e+d)+"L"+(t+n)+","+e),h.setAttributeNS(null,"class",this.className+" vis-icon-fill")),1==this.options.drawPoints.enabled&&s.drawPoint(t+.5*n,e,this,i,o);else{var u=Math.round(.3*n),c=Math.round(.4*r),p=Math.round(.75*r),f=Math.round((n-2*u)/3);s.drawBar(t+.5*u+f,e+d-c-1,u,c,this.className+" vis-bar",i,o,this.style),s.drawBar(t+1.5*u+f+2,e+d-p-1,u,p,this.className+" vis-bar",i,o,this.style)}},o.prototype.getLegend=function(t,e){var i=document.createElementNS("http://www.w3.org/2000/svg","svg");return this.drawIcon(0,.5*e,[],i,t,e),{icon:i,label:this.content,orientation:this.options.yAxisOrientation}},o.prototype.getYRange=function(t){return this.type.getYRange(t)},o.prototype.getData=function(t){return this.type.getData(t)},o.prototype.draw=function(t,e,i){this.type.draw(t,e,i)},t.exports=o},function(t,e,i){function o(t,e){this.groupId=t,this.options=e}var n=i(7),s=i(55);o.prototype.getData=function(t){for(var e=[],i=0;it[o].y?t[o].y:e,i=i0){t.sort(function(t,e){return t.x===e.x?t.groupIde[s].y?e[s].y:o,n=nt[r].accumulatedNegative?t[r].accumulatedNegative:o,o=o>t[r].accumulatedPositive?t[r].accumulatedPositive:o,n=n0&&(i=Math.min(i,Math.abs(e[o-1].x-e[o].x))),0===i&&(void 0===t[e[o].x]&&(t[e[o].x]={amount:0,resolved:0,accumulatedPositive:0,accumulatedNegative:0}),t[e[o].x].amount+=1)},o.prototype.draw=function(t,e,i){if(null!=t&&t.length>0){var r,a,h=Number(i.svg.style.height.replace("px",""));if(r=n.getSVGElement("path",i.svgElements,i.svg),r.setAttributeNS(null,"class",e.className),void 0!==e.style&&r.setAttributeNS(null,"style",e.style),a=1==e.options.interpolation.enabled?o._catmullRom(t,e):o._linear(t),1==e.options.shaded.enabled){var d,l=n.getSVGElement("path",i.svgElements,i.svg);d="top"==e.options.shaded.orientation?"M"+t[0].x+",0 "+a+"L"+t[t.length-1].x+",0":"M"+t[0].x+","+h+" "+a+"L"+t[t.length-1].x+","+h,l.setAttributeNS(null,"class",e.className+" vis-fill"),void 0!==e.options.shaded.style&&l.setAttributeNS(null,"style",e.options.shaded.style),l.setAttributeNS(null,"d",d)}r.setAttributeNS(null,"d","M"+a),1==e.options.drawPoints.enabled&&s.draw(t,e,i)}},o._catmullRomUniform=function(t){for(var e,i,o,n,s,r,a=Math.round(t[0].x)+","+Math.round(t[0].y)+" ",h=1/6,d=t.length,l=0;d-1>l;l++)e=0==l?t[0]:t[l-1],i=t[l],o=t[l+1],n=d>l+2?t[l+2]:o,s={x:(-e.x+6*i.x+o.x)*h,y:(-e.y+6*i.y+o.y)*h},r={x:(i.x+6*o.x-n.x)*h,y:(i.y+6*o.y-n.y)*h},a+="C"+s.x+","+s.y+" "+r.x+","+r.y+" "+o.x+","+o.y+" ";return a},o._catmullRom=function(t,e){var i=e.options.interpolation.alpha;if(0==i||void 0===i)return this._catmullRomUniform(t);for(var o,n,s,r,a,h,d,l,u,c,p,f,m,v,g,y,b,w,_,x=Math.round(t[0].x)+","+Math.round(t[0].y)+" ",k=t.length,M=0;k-1>M;M++)o=0==M?t[0]:t[M-1],n=t[M],s=t[M+1],r=k>M+2?t[M+2]:s,d=Math.sqrt(Math.pow(o.x-n.x,2)+Math.pow(o.y-n.y,2)),l=Math.sqrt(Math.pow(n.x-s.x,2)+Math.pow(n.y-s.y,2)),u=Math.sqrt(Math.pow(s.x-r.x,2)+Math.pow(s.y-r.y,2)),v=Math.pow(u,i),y=Math.pow(u,2*i),g=Math.pow(l,i),b=Math.pow(l,2*i),_=Math.pow(d,i),w=Math.pow(d,2*i),c=2*w+3*_*g+b,p=2*y+3*v*g+b,f=3*_*(_+g),f>0&&(f=1/f),m=3*v*(v+g),m>0&&(m=1/m),a={x:(-b*o.x+c*n.x+w*s.x)*f,y:(-b*o.y+c*n.y+w*s.y)*f},h={x:(y*n.x+p*s.x-b*r.x)*m,y:(y*n.y+p*s.y-b*r.y)*m},0==a.x&&0==a.y&&(a=n),0==h.x&&0==h.y&&(h=s),x+="C"+a.x+","+a.y+" "+h.x+","+h.y+" "+s.x+","+s.y+" ";return x},o._linear=function(t){for(var e="",i=0;it[o].y?t[o].y:e,i=it[o].y?t[o].y:e,i=i0&&(r=Math.min(r,Math.abs(c[l-1].x-a))),h=o._getSafeDrawData(r,d,m);else{var g=l+(p[a].amount-p[a].resolved),y=l-(p[a].resolved+1);g0&&(r=Math.min(r,Math.abs(c[y].x-a))),h=o._getSafeDrawData(r,d,m),p[a].resolved+=1,d.options.stack===!0?c[l].y0&&(i=Math.min(i,Math.abs(e[o-1].x-e[o].x))),0===i&&(void 0===t[e[o].x]&&(t[e[o].x]={amount:0,resolved:0,accumulatedPositive:0,accumulatedNegative:0}),t[e[o].x].amount+=1)},o._getSafeDrawData=function(t,e,i){var o,n;return t0?(o=i>t?i:t,n=0,"left"===e.options.barChart.align?n-=.5*t:"right"===e.options.barChart.align&&(n+=.5*t)):(o=e.options.barChart.width,n=0,"left"===e.options.barChart.align?n-=.5*e.options.barChart.width:"right"===e.options.barChart.align&&(n+=.5*e.options.barChart.width)),{width:o,offset:n}},o.getStackedYRange=function(t,e,i,n,s){if(t.length>0){t.sort(function(t,e){return t.x===e.x?t.groupIde[s].y?e[s].y:o,n=nt[r].accumulatedNegative?t[r].accumulatedNegative:o,o=o>t[r].accumulatedPositive?t[r].accumulatedPositive:o,n=nt?-1:1});for(var i=0;i")}this.dom.textArea.innerHTML=s,this.dom.textArea.style.lineHeight=.75*this.options.iconSize+this.options.iconSpacing+"px"}},o.prototype.drawLegendIcons=function(){if(this.dom.frame.parentNode){var t=Object.keys(this.groups);t.sort(function(t,e){return e>t?-1:1}),s.prepareElements(this.svgElements);var e=window.getComputedStyle(this.dom.frame).paddingTop,i=Number(e.replace("px","")),o=i,n=this.options.iconSize,r=.75*this.options.iconSize,a=i+.5*r+3;this.svg.style.width=n+5+i+"px";for(var h=0;h0){var i=this.groupIndex%this.groupsArray.length;this.groupIndex++,e={},e.color=this.groups[this.groupsArray[i]],this.groups[t]=e}else{var i=this.defaultIndex%this.defaultGroups.length;this.defaultIndex++,e={},e.color=this.defaultGroups[i],this.groups[t]=e}return e}},{key:"add",value:function(t,e){return this.groups[t]=e,this.groupsArray.push(t),e}}]),t}();e["default"]=r,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;it.left&&this.shape.topt.top}},{key:"isBoundingBoxOverlappingWith",value:function(t){return this.shape.boundingBox.leftt.left&&this.shape.boundingBox.topt.top}}],[{key:"parseOptions",value:function(t,e){var i=void 0===arguments[2]?!1:arguments[2],o=["color","font","fixed","shadow"];if(B.selectiveNotDeepExtend(o,t,e,i),B.mergeOptions(t,e,"shadow"),void 0!==e.color&&null!==e.color){var n=B.parseColor(e.color);B.fillIfDefined(t.color,n)}else i===!0&&null===e.color&&(t.color=void 0,delete t.color);void 0!==e.fixed&&null!==e.fixed&&("boolean"==typeof e.fixed?(t.fixed.x=e.fixed,t.fixed.y=e.fixed):(void 0!==e.fixed.x&&"boolean"==typeof e.fixed.x&&(t.fixed.x=e.fixed.x),void 0!==e.fixed.y&&"boolean"==typeof e.fixed.y&&(t.fixed.y=e.fixed.y))),void 0!==e.font&&a["default"].parseOptions(t.font,e),void 0!==e.scaling&&B.mergeOptions(t.scaling,e.scaling,"label")}}]),t}();e["default"]=R,t.exports=e["default"]},function(t,e,i){function o(t,e){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t)){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(h){n=!0,s=h}finally{try{!o&&a["return"]&&a["return"]()}finally{if(n)throw s}}return i}throw new TypeError("Invalid attempt to destructure non-iterable instance")}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;i=this.options.scaling.label.maxVisible&&(r=Number(this.options.scaling.label.maxVisible)/this.body.view.scale);var h=this.size.yLine,d=this._getColor(a),l=o(d,2),u=l[0],c=l[1],p=this._setAlignment(t,i,h,s),f=o(p,2);i=f[0],h=f[1],t.font=(e?"bold ":"")+r+"px "+this.options.font.face,t.fillStyle=u,t.textAlign="center",this.options.font.strokeWidth>0&&(t.lineWidth=this.options.font.strokeWidth,t.strokeStyle=c,t.lineJoin="round");for(var m=0;m0&&t.strokeText(this.lines[m],i,h),t.fillText(this.lines[m],i,h),h+=r}},{key:"_setAlignment",value:function(t,e,i,o){if("horizontal"!==this.options.font.align&&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?"bold ":"")+this.options.font.size+"px "+this.options.font.face,i=t.measureText(o[0]).width;for(var s=1;n>s;s++){var r=t.measureText(o[s]).width;i=r>i?r:i}}return this.lines=o,this.lineCount=n,i}}],[{key:"parseOptions",value:function(t,e){var i=void 0===arguments[2]?!1:arguments[2];if("string"==typeof e.font){var o=e.font.split(" ");t.size=o[0].replace("px",""),t.face=o[1],t.color=o[2]}else"object"==typeof e.font&&r.fillIfDefined(t,e.font,i);t.size=Number(t.size)}}]),t}();e["default"]=a,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;ithis.imageObj.height?(o=this.imageObj.width/this.imageObj.height,e=2*this.options.size*o||this.imageObj.width,i=2*this.options.size||this.imageObj.height):(o=this.imageObj.width&&this.imageObj.height?this.imageObj.height/this.imageObj.width:1,e=2*this.options.size||this.imageObj.width,i=2*this.options.size*o||this.imageObj.height),this.width=e,this.height=i,this.radius=.5*this.width}}},{key:"_drawRawCircle",value:function(t,e,i,o,n,s){var r=this.options.borderWidth,a=this.options.borderWidthSelected||2*this.options.borderWidth;t.strokeStyle=o?this.options.color.highlight.border:n?this.options.color.hover.border:this.options.color.border,t.lineWidth=o?a:r,t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.fillStyle=o?this.options.color.highlight.background:n?this.options.color.hover.background:this.options.color.background,t.circle(e,i,s),this.enableShadow(t),t.fill(),this.disableShadow(t),t.stroke()}},{key:"_drawImageAtPosition",value:function(t){0!=this.imageObj.width&&(t.globalAlpha=1,this.enableShadow(t),t.drawImage(this.imageObj,this.left,this.top,this.width,this.height),this.disableShadow(t))}},{key:"_drawImageLabel",value:function(t,e,i,o){var n,s=0;if(void 0!==this.height){s=.5*this.height;var r=this.labelModule.getTextSize(t);r.lineCount>=1&&(s+=r.height/2)}n=i+s,this.options.label&&(this.labelOffset=s),this.labelModule.draw(t,e,n,o,"hanging")}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;ii.shape.height?(r=i.x+.5*i.shape.width,a=i.y-h):(r=i.x+h,a=i.y-.5*i.shape.height),s=this._pointOnCircle(r,a,h,.125),this.labelModule.draw(t,s.x,s.y,n)}}}},{key:"isOverlappingWith",value:function(t){if(this.connected){var e=10,i=this.from.x,o=this.from.y,n=this.to.x,s=this.to.y,r=t.left,a=t.top,h=this.edgeType.getDistanceToEdge(i,o,n,s,r,a);return e>h}return!1}},{key:"_rotateForLabelAlignment",value:function(t){var e=this.from.y-this.to.y,i=this.from.x-this.to.x,o=Math.atan2(e,i);(-1>o&&0>i||o>0&&0>i)&&(o+=Math.PI),t.rotate(o)}},{key:"_pointOnCircle",value:function(t,e,i,o){var n=2*o*Math.PI;return{x:t+i*Math.cos(n),y:e-i*Math.sin(n)}}},{key:"select",value:function(){this.selected=!0}},{key:"unselect",value:function(){this.selected=!1}}],[{key:"parseOptions",value:function(t,e){var i=void 0===arguments[2]?!1:arguments[2],o=["id","from","hidden","hoverWidth","label","length","line","opacity","physics","selectionWidth","selfReferenceSize","to","title","value","width"];if(f.selectiveDeepExtend(o,t,e,i),f.mergeOptions(t,e,"smooth"),f.mergeOptions(t,e,"shadow"),void 0!==e.dashes&&null!==e.dashes?t.dashes=e.dashes:i===!0&&null===e.dashes&&(t.dashes=void 0,delete t.dashes),void 0!==e.scaling&&null!==e.scaling?(void 0!==e.scaling.min&&(t.scaling.min=e.scaling.min),void 0!==e.scaling.max&&(t.scaling.max=e.scaling.max),f.mergeOptions(t.scaling,e.scaling,"label")):i===!0&&null===e.scaling&&(t.scaling=void 0,delete t.scaling),void 0!==e.arrows&&null!==e.arrows)if("string"==typeof e.arrows){var n=e.arrows.toLowerCase();-1!=n.indexOf("to")&&(t.arrows.to.enabled=!0),-1!=n.indexOf("middle")&&(t.arrows.middle.enabled=!0),-1!=n.indexOf("from")&&(t.arrows.from.enabled=!0)}else{if("object"!=typeof e.arrows)throw new Error("The arrow newOptions can only be an object or a string. Refer to the documentation. You used:"+JSON.stringify(e.arrows));f.mergeOptions(t.arrows,e.arrows,"to"),f.mergeOptions(t.arrows,e.arrows,"middle"),f.mergeOptions(t.arrows,e.arrows,"from")}else i===!0&&null===e.arrows&&(t.arrows=void 0,delete t.arrows);if(void 0!==e.color&&null!==e.color)if(f.isString(e.color))t.color.color=e.color,t.color.highlight=e.color,t.color.hover=e.color,t.color.inherit=!1;else{var s=!1;void 0!==e.color.color&&(t.color.color=e.color.color,s=!0),void 0!==e.color.highlight&&(t.color.highlight=e.color.highlight,s=!0),void 0!==e.color.hover&&(t.color.hover=e.color.hover,s=!0),void 0!==e.color.inherit&&(t.color.inherit=e.color.inherit),void 0!==e.color.opacity&&(t.color.opacity=Math.min(1,Math.max(0,e.color.opacity))),void 0===e.color.inherit&&s===!0&&(t.color.inherit=!1)}else i===!0&&null===e.color&&(t.color=void 0,delete t.color);void 0!==e.font&&a["default"].parseOptions(t.font,e)}}]),t}();e["default"]=m,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i=l&&h>d;){var m=.5*(l+u);if(i=this.getPoint(m,a),o=Math.atan2(p.y-i.y,p.x-i.x),n=p.distanceToBorder(e,o),s=Math.sqrt(Math.pow(i.x-p.x,2)+Math.pow(i.y-p.y,2)),r=n-s,Math.abs(r)r?f===!1?l=m:u=m:f===!1?u=m:l=m,d++}return i.t=m,i}},{key:"_getDistanceToBezierEdge",value:function(t,e,i,o,n,s,r){var a=void 0,h=void 0;a=r.x,h=r.y;var d=1e9,l=void 0,u=void 0,c=void 0,p=void 0,f=void 0,m=t,v=e;for(u=1;10>u;u++)c=.1*u,p=Math.pow(1-c,2)*t+2*c*(1-c)*a+Math.pow(c,2)*i,f=Math.pow(1-c,2)*e+2*c*(1-c)*h+Math.pow(c,2)*o,u>0&&(l=this._getDistanceToLine(m,v,p,f,n,s),d=d>l?l:d),m=p,v=f;return d}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t,e){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t)){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(h){n=!0,s=h}finally{try{!o&&a["return"]&&a["return"]()}finally{if(n)throw s}}return i}throw new TypeError("Invalid attempt to destructure non-iterable instance")}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;io.shape.height?(e=o.x+.5*o.shape.width,i=o.y-n):(e=o.x+n,i=o.y-.5*o.shape.height),[e,i,n]}},{key:"_pointOnCircle",value:function(t,e,i,o){var n=2*o*Math.PI;return{x:t+i*Math.cos(n),y:e-i*Math.sin(n)}}},{key:"_findBorderPositionCircle",value:function(t,e,i){for(var o=i.x,n=i.y,s=i.low,r=i.high,a=i.direction,h=10,d=0,l=this.options.selfReferenceSize,u=void 0,c=void 0,p=void 0,f=void 0,m=void 0,v=.05,g=.5*(s+r);r>=s&&h>d&&(g=.5*(s+r),u=this._pointOnCircle(o,n,l,g),c=Math.atan2(t.y-u.y,t.x-u.x),p=t.distanceToBorder(e,c),f=Math.sqrt(Math.pow(u.x-t.x,2)+Math.pow(u.y-t.y,2)),m=p-f,!(Math.abs(m)0?a>0?s=g:r=g:a>0?r=g:s=g,d++;return u.t=g,u}},{key:"getLineWidth",value:function(t,e){return t===!0?Math.max(this.selectionWidth,.3/this.body.view.scale):e===!0?Math.max(this.hoverWidth,.3/this.body.view.scale):Math.max(this.options.width,.3/this.body.view.scale)}},{key:"getColor",value:function(t,e,i){var o=this.options.color;if(o.inherit!==!1){if("both"===o.inherit&&this.from.id!==this.to.id){var n=t.createLinearGradient(this.from.x,this.from.y,this.to.x,this.to.y),s=void 0,a=void 0;return s=this.from.options.color.highlight.border,a=this.to.options.color.highlight.border,this.from.selected===!1&&this.to.selected===!1?(s=r.overrideOpacity(this.from.options.color.border,this.options.color.opacity),a=r.overrideOpacity(this.to.options.color.border,this.options.color.opacity)):this.from.selected===!0&&this.to.selected===!1?a=this.to.options.color.border:this.from.selected===!1&&this.to.selected===!0&&(s=this.from.options.color.border),n.addColorStop(0,s),n.addColorStop(1,a),n}this.colorDirty===!0&&("to"===o.inherit?(this.color.highlight=this.to.options.color.highlight.border,this.color.hover=this.to.options.color.hover.border,this.color.color=r.overrideOpacity(this.to.options.color.border,o.opacity)):(this.color.highlight=this.from.options.color.highlight.border,this.color.hover=this.from.options.color.hover.border,this.color.color=r.overrideOpacity(this.from.options.color.border,o.opacity)))}else this.colorDirty===!0&&(this.color.highlight=o.highlight,this.color.hover=o.hover,this.color.color=r.overrideOpacity(o.color,o.opacity));return this.colorDirty=!1,e===!0?this.color.highlight:i===!0?this.color.hover:this.color.color}},{key:"_circle",value:function(t,e,i,o){this.enableShadow(t),t.beginPath(),t.arc(e,i,o,0,2*Math.PI,!1),t.stroke(),this.disableShadow(t)}},{key:"getDistanceToEdge",value:function(t,e,i,n,s,r,a){var h=0;if(this.from!=this.to)h=this._getDistanceToEdge(t,e,i,n,s,r,a);else{var d=this._getCircleData(),l=o(d,3),u=l[0],c=l[1],p=l[2],f=u-s,m=c-r;h=Math.abs(Math.sqrt(f*f+m*m)-p)}return this.labelModule.size.lefts&&this.labelModule.size.topr?0:h}},{key:"_getDistanceToLine",value:function(t,e,i,o,n,s){var r=i-t,a=o-e,h=r*r+a*a,d=((n-t)*r+(s-e)*a)/h;d>1?d=1:0>d&&(d=0);var l=t+d*r,u=e+d*a,c=l-n,p=u-s;return Math.sqrt(c*c+p*p)}},{key:"drawArrowHead",value:function(t,e,i,n,s){t.strokeStyle=this.getColor(t,n,s),t.fillStyle=t.strokeStyle,t.lineWidth=this.getLineWidth(n,s);var r=void 0,a=void 0,h=void 0,d=void 0,l=void 0,u=void 0,c=void 0;if("from"===e?(d=this.from,l=this.to,u=.1,c=this.options.arrows.from.scaleFactor):"to"===e?(d=this.to,l=this.from,u=-.1,c=this.options.arrows.to.scaleFactor):(d=this.to,l=this.from,c=this.options.arrows.middle.scaleFactor),d!=l){if("middle"!==e)if(this.options.smooth.enabled===!0){h=this.findBorderPosition(d,t,{via:i});var p=this.getPoint(Math.max(0,Math.min(1,h.t+u)),i);r=Math.atan2(h.y-p.y,h.x-p.x)}else r=Math.atan2(d.y-l.y,d.x-l.x),h=this.findBorderPosition(d,t);else r=Math.atan2(d.y-l.y,d.x-l.x),h=this.getPoint(.6,i);a=(10+5*this.options.width)*c,t.arrow(h.x,h.y,r,a),this.enableShadow(t),t.fill(),this.disableShadow(t),t.stroke()}else{var f=void 0,m=void 0,v=this._getCircleData(t),g=o(v,3),y=g[0],b=g[1],w=g[2];"from"===e?(m=this.findBorderPosition(this.from,t,{x:y,y:b,low:.25,high:.6,direction:-1}),f=-2*m.t*Math.PI+1.5*Math.PI+.1*Math.PI):"to"===e?(m=this.findBorderPosition(this.from,t,{x:y,y:b,low:.6,high:1,direction:1}),f=-2*m.t*Math.PI+1.5*Math.PI-1.1*Math.PI):(m=this._pointOnCircle(y,b,w,.175),f=3.9269908169872414);var _=(10+5*this.options.width)*c;t.arrow(m.x,m.y,f,_),this.enableShadow(t),t.fill(),this.disableShadow(t),t.stroke()}}},{key:"enableShadow",value:function(t){this.options.shadow.enabled===!0&&(t.shadowColor="rgba(0,0,0,0.5)",t.shadowBlur=this.options.shadow.size,t.shadowOffsetX=this.options.shadow.x,t.shadowOffsetY=this.options.shadow.y)}},{key:"disableShadow",value:function(t){this.options.shadow.enabled===!0&&(t.shadowColor="rgba(0,0,0,0)",t.shadowBlur=0,t.shadowOffsetX=0,t.shadowOffsetY=0)}}]),t}();e["default"]=a,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;ithis.to.y?this.from.xthis.to.x&&(t=this.from.x-i*s,e=this.from.y-i*s):this.from.ythis.to.x&&(t=this.from.x-i*s,e=this.from.y+i*s)),"discrete"===o&&(t=i*s>n?this.from.x:t)):Math.abs(this.from.x-this.to.x)>Math.abs(this.from.y-this.to.y)&&(this.from.y>this.to.y?this.from.xthis.to.x&&(t=this.from.x-i*n,e=this.from.y-i*n):this.from.ythis.to.x&&(t=this.from.x-i*n,e=this.from.y+i*n)),"discrete"===o&&(e=i*n>s?this.from.y:e));else if("straightCross"===o)Math.abs(this.from.x-this.to.x)Math.abs(this.from.y-this.to.y)&&(t=this.from.xthis.to.y?this.from.xthis.to.x&&(t=this.from.x-i*s,e=this.from.y-i*s,t=this.to.x>t?this.to.x:t):this.from.ythis.to.x&&(t=this.from.x-i*s,e=this.from.y+i*s,t=this.to.x>t?this.to.x:t)):Math.abs(this.from.x-this.to.x)>Math.abs(this.from.y-this.to.y)&&(this.from.y>this.to.y?this.from.xe?this.to.y:e):this.from.x>this.to.x&&(t=this.from.x-i*n,e=this.from.y-i*n,e=this.to.y>e?this.to.y:e):this.from.ythis.to.x&&(t=this.from.x-i*n,e=this.from.y+i*n,e=this.to.y1&&(this.startedStabilization=!1),this.stopSimulation())}},{key:"_emitStabilized",value:function(){var t=this;(this.stabilizationIterations>1||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];"number"!=typeof e&&(console.log("The stabilize method needs a numeric amount of iterations. Switching to default: ",this.options.stabilization.iterations),e=this.options.stabilization.iterations),this.body.emitter.emit("_resizeNodes"),this.stopSimulation(),this.stabilized=!1,this.body.emitter.emit("_blockRedrawRequests"),this.targetIterations=e,this.options.stabilization.onlyDynamicEdges===!0&&this._freezeNodes(),this.stabilizationIterations=0,setTimeout(function(){return t._stabilizationBatch()},0)}},{key:"_stabilizationBatch",value:function(){for(var t=0;this.stabilized===!1&&t0){var t=void 0,e=this.body.nodes,i=this.physicsBody.physicsNodeIndices,o=i.length,n=this._formBarnesHutTree(e,i);this.barnesHutTree=n;for(var s=0;o>s;s++)t=e[i[s]],t.options.mass>0&&(this._getForceContribution(n.root.children.NW,t),this._getForceContribution(n.root.children.NE,t),this._getForceContribution(n.root.children.SW,t),this._getForceContribution(n.root.children.SE,t))}}},{key:"_getForceContribution",value:function(t,e){if(t.childrenCount>0){var i=void 0,o=void 0,n=void 0;i=t.centerOfMass.x-e.x,o=t.centerOfMass.y-e.y,n=Math.sqrt(i*i+o*o),n*t.calcSize>this.thetaInversed?this._calculateForces(n,i,o,e,t):4===t.childrenCount?(this._getForceContribution(t.children.NW,e),this._getForceContribution(t.children.NE,e),this._getForceContribution(t.children.SW,e),this._getForceContribution(t.children.SE,e)):t.children.data.id!=e.id&&this._calculateForces(n,i,o,e,t)}}},{key:"_calculateForces",value:function(t,e,i,o,n){0===t&&(t=.1,e=t),this.overlapAvoidanceFactor<1&&(t=Math.max(.1+this.overlapAvoidanceFactor*o.shape.radius,t-o.shape.radius));var s=this.options.gravitationalConstant*n.mass*o.options.mass/Math.pow(t,3),r=e*s,a=i*s;this.physicsBody.forces[o.id].x+=r,this.physicsBody.forces[o.id].y+=a}},{key:"_formBarnesHutTree",value:function(t,e){for(var i=void 0,o=e.length,n=t[e[0]].x,s=t[e[0]].y,r=t[e[0]].x,a=t[e[0]].y,h=1;o>h;h++){var d=t[e[h]].x,l=t[e[h]].y;t[e[h]].options.mass>0&&(n>d&&(n=d),d>r&&(r=d),s>l&&(s=l),l>a&&(a=l))}var u=Math.abs(r-n)-Math.abs(a-s);u>0?(s-=.5*u,a+=.5*u):(n+=.5*u,r-=.5*u);var c=1e-5,p=Math.max(c,Math.abs(r-n)),f=.5*p,m=.5*(n+r),v=.5*(s+a),g={root:{centerOfMass:{x:0,y:0},mass:0,range:{minX:m-f,maxX:m+f,minY:v-f,maxY:v+f},size:p,calcSize:1/p,children:{data:null},maxWidth:0,level:0,childrenCount:4}};this._splitBranch(g.root);for(var h=0;o>h;h++)i=t[e[h]],i.options.mass>0&&this._placeInTree(g.root,i);return g}},{key:"_updateBranchMass",value:function(t,e){var i=t.mass+e.options.mass,o=1/i;t.centerOfMass.x=t.centerOfMass.x*t.mass+e.x*e.options.mass,t.centerOfMass.x*=o,t.centerOfMass.y=t.centerOfMass.y*t.mass+e.y*e.options.mass,t.centerOfMass.y*=o,t.mass=i;var n=Math.max(Math.max(e.height,e.radius),e.width);t.maxWidth=t.maxWidthe.x?t.children.NW.range.maxY>e.y?this._placeInRegion(t,e,"NW"):this._placeInRegion(t,e,"SW"):t.children.NW.range.maxY>e.y?this._placeInRegion(t,e,"NE"):this._placeInRegion(t,e,"SE")}},{key:"_placeInRegion",value:function(t,e,i){switch(t.children[i].childrenCount){case 0:t.children[i].children.data=e,t.children[i].childrenCount=1,this._updateBranchMass(t.children[i],e);break;case 1:t.children[i].children.data.x===e.x&&t.children[i].children.data.y===e.y?(e.x+=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.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=0;xo;)e.push(this.clusteredNodes[t].node),t=this.clusteredNodes[t].clusterId,o++;return e.push(this.body.nodes[t]),e}},{key:"_getConnectedId",value:function(t,e){return t.toId!=e?t.toId:t.fromId!=e?t.fromId:t.fromId}},{key:"_getHubSize",value:function(){for(var t=0,e=0,i=0,o=0,n=0;no&&(o=s.edges.length),t+=s.edges.length,e+=Math.pow(s.edges.length,2),i+=1}t/=i,e/=i;var r=e-Math.pow(t,2),a=Math.sqrt(r),h=Math.floor(t+2*a);return h>o&&(h=o),h}}]),t}();e["default"]=d,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(t,e,i){for(var o=!0;o;){var n=t,s=e,r=i;a=d=h=void 0,o=!1;var a=Object.getOwnPropertyDescriptor(n,s);if(void 0!==a){if("value"in a)return a.value;var h=a.get;return void 0===h?void 0:h.call(r)}var d=Object.getPrototypeOf(n);if(null===d)return void 0;t=d,e=s,i=r,o=!0}},a=i(62),h=o(a),d=function(t){function e(t,i,o,s,a){n(this,e),r(Object.getPrototypeOf(e.prototype),"constructor",this).call(this,t,i,o,s,a),this.isCluster=!0,this.containedNodes={},this.containedEdges={}}return s(e,t),e}(h["default"]);e["default"]=d,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;i0,t.renderTimer=void 0}),this.body.emitter.on("destroy",function(){t.renderRequests=0,t.renderingActive=!1,t.requiresTimeout===!0?clearTimeout(t.renderTimer):cancelAnimationFrame(t.renderTimer),t.body.emitter.off()})}},{key:"setOptions",value:function(t){if(void 0!==t){var e=["hideEdgesOnDrag","hideNodesOnDrag"];s.selectiveDeepExtend(e,this.options,t)}}},{key:"_startRendering",value:function(){this.renderingActive===!0&&void 0===this.renderTimer&&(this.requiresTimeout===!0?this.renderTimer=window.setTimeout(this._renderStep.bind(this),this.simulationInterval):this.renderTimer=window.requestAnimationFrame(this._renderStep.bind(this)))}},{key:"_renderStep",value:function(){this.renderingActive===!0&&(this.renderTimer=void 0,this.requiresTimeout===!0&&this._startRendering(),this._redraw(),this.requiresTimeout===!1&&this._startRendering())}},{key:"redraw",value:function(){this.body.emitter.emit("setSize"),this._redraw()}},{key:"_requestRedraw",value:function(){var t=this;this.redrawRequested!==!0&&this.renderingActive===!1&&this.allowRedrawRequests===!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];this.body.emitter.emit("initRedraw"),this.redrawRequested=!1;var e=this.canvas.frame.canvas.getContext("2d");(0===this.canvas.frame.canvas.width||0===this.canvas.frame.canvas.height)&&this.canvas.setSize(),void 0===this.pixelRatio&&(this.pixelRatio=(window.devicePixelRatio||1)/(e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1)),e.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);var i=this.canvas.frame.canvas.clientWidth,o=this.canvas.frame.canvas.clientHeight;e.clearRect(0,0,i,o),e.save(),e.translate(this.body.view.translation.x,this.body.view.translation.y),e.scale(this.body.view.scale,this.body.view.scale),e.beginPath(),this.body.emitter.emit("beforeDrawing",e),e.closePath(),t===!1&&(this.dragging===!1||this.dragging===!0&&this.options.hideEdgesOnDrag===!1)&&this._drawEdges(e),(this.dragging===!1||this.dragging===!0&&this.options.hideNodesOnDrag===!1)&&this._drawNodes(e,t),this.controlNodesActive===!0&&this._drawControlNodes(e),e.beginPath(),this.body.emitter.emit("afterDrawing",e),e.closePath(),e.restore(),t===!0&&e.clearRect(0,0,i,o)}},{key:"_resizeNodes",value:function(){var t=this.canvas.frame.canvas.getContext("2d");void 0===this.pixelRatio&&(this.pixelRatio=(window.devicePixelRatio||1)/(t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1)),t.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0),t.save(),t.translate(this.body.view.translation.x,this.body.view.translation.y),t.scale(this.body.view.scale,this.body.view.scale);var e=this.body.nodes,i=void 0;for(var o in e)e.hasOwnProperty(o)&&(i=e[o],i.resize(t),i.updateBoundingBox(t));t.restore()}},{key:"_drawNodes",value:function(t){for(var e=void 0===arguments[1]?!1:arguments[1],i=this.body.nodes,o=this.body.nodeIndices,n=void 0,s=[],r=20,a=this.canvas.DOMtoCanvas({x:-r,y:-r}),h=this.canvas.DOMtoCanvas({x:this.canvas.frame.canvas.clientWidth+r,y:this.canvas.frame.canvas.clientHeight+r}),d={top:a.y,left:a.x,bottom:h.y,right:h.x},l=0;l0)for(var r=0;rt.shape.boundingBox.left&&(n=t.shape.boundingBox.left),st.shape.boundingBox.top&&(i=t.shape.boundingBox.top),ot.shape.boundingBox.left&&(n=t.shape.boundingBox.left),st.shape.boundingBox.top&&(i=t.shape.boundingBox.top),o.5*this.body.nodeIndices.length)return void this.fit(i,!1);t=this._getRange(i.nodes);var a=this.body.nodeIndices.length;e=12.662/(a+7.4147)+.0964822;var h=Math.min(this.canvas.frame.canvas.clientWidth/600,this.canvas.frame.canvas.clientHeight/600);e*=h}else{this.body.emitter.emit("_resizeNodes"),t=this._getRange(i.nodes);var d=1.1*Math.abs(t.maxX-t.minX),l=1.1*Math.abs(t.maxY-t.minY),u=this.canvas.frame.canvas.clientWidth/d,c=this.canvas.frame.canvas.clientHeight/l;e=c>=u?u:c}e>1?e=1:0===e&&(e=1);var p=this._findCenter(t),f={position:p,scale:e,animation:i.animation};this.moveTo(f)}},{key:"focus",value:function(t){var e=void 0===arguments[1]?{}:arguments[1];if(void 0!==this.body.nodes[t]){var i={x:this.body.nodes[t].x,y:this.body.nodes[t].y};e.position=i,e.lockedOnNode=t,this.moveTo(e)}else console.log("Node: "+t+" cannot be found.")}},{key:"moveTo",value:function(t){return void 0===t?void(t={}):(void 0===t.offset&&(t.offset={x:0,y:0}),void 0===t.offset.x&&(t.offset.x=0),void 0===t.offset.y&&(t.offset.y=0),void 0===t.scale&&(t.scale=this.body.view.scale),void 0===t.position&&(t.position=this.getViewPosition()),void 0===t.animation&&(t.animation={duration:0}),t.animation===!1&&(t.animation={duration:0}),t.animation===!0&&(t.animation={}),void 0===t.animation.duration&&(t.animation.duration=1e3),void 0===t.animation.easingFunction&&(t.animation.easingFunction="easeInOutQuad"),void this.animateView(t))}},{key:"animateView",value:function(t){if(void 0!==t){this.animationEasingFunction=t.animation.easingFunction,this.releaseNode(),t.locked===!0&&(this.lockedOnNodeId=t.lockedOnNode,this.lockedOnNodeOffset=t.offset),0!=this.easingTime&&this._transitionRedraw(!0),this.sourceScale=this.body.view.scale,this.sourceTranslation=this.body.view.translation,this.targetScale=t.scale,this.body.view.scale=this.targetScale;var e=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight}),i={x:e.x-t.position.x,y:e.y-t.position.y};this.targetTranslation={x:this.sourceTranslation.x+i.x*this.targetScale+t.offset.x,y:this.sourceTranslation.y+i.y*this.targetScale+t.offset.y},0===t.animation.duration?void 0!=this.lockedOnNodeId?(this.viewFunction=this._lockedRedraw.bind(this),this.body.emitter.on("initRedraw",this.viewFunction)):(this.body.view.scale=this.targetScale,this.body.view.translation=this.targetTranslation,this.body.emitter.emit("_requestRedraw")):(this.animationSpeed=1/(60*t.animation.duration*.001)||1/60,this.animationEasingFunction=t.animation.easingFunction,this.viewFunction=this._transitionRedraw.bind(this),this.body.emitter.on("initRedraw",this.viewFunction),this.body.emitter.emit("_startRendering"))}}},{key:"_lockedRedraw",value:function(){var t={x:this.body.nodes[this.lockedOnNodeId].x,y:this.body.nodes[this.lockedOnNodeId].y},e=this.DOMtoCanvas({x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight}),i={x:e.x-t.x,y:e.y-t.y},o=this.body.view.translation,n={x:o.x+i.x*this.body.view.scale+this.lockedOnNodeOffset.x,y:o.y+i.y*this.body.view.scale+this.lockedOnNodeOffset.y};this.body.view.translation=n}},{key:"releaseNode",value:function(){void 0!==this.lockedOnNodeId&&void 0!==this.viewFunction&&(this.body.emitter.off("initRedraw",this.viewFunction),this.lockedOnNodeId=void 0,this.lockedOnNodeOffset=void 0)}},{key:"_transitionRedraw",value:function(){var t=void 0===arguments[0]?!1:arguments[0];this.easingTime+=this.animationSpeed,this.easingTime=t===!0?1:this.easingTime;var e=s.easingFunctions[this.animationEasingFunction](this.easingTime);this.body.view.scale=this.sourceScale+(this.targetScale-this.sourceScale)*e,this.body.view.translation={x:this.sourceTranslation.x+(this.targetTranslation.x-this.sourceTranslation.x)*e,y:this.sourceTranslation.y+(this.targetTranslation.y-this.sourceTranslation.y)*e},this.easingTime>=1&&(this.body.emitter.off("initRedraw",this.viewFunction),this.easingTime=0,void 0!=this.lockedOnNodeId&&(this.viewFunction=this._lockedRedraw.bind(this),this.body.emitter.on("initRedraw",this.viewFunction)),this.body.emitter.emit("animationFinished"))}},{key:"getScale",value:function(){return this.body.view.scale}},{key:"getViewPosition",value:function(){return this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight})}}]),t}();e["default"]=r,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;i50&&(this.drag.pointer=this.getPointer(t.center),this.drag.pinched=!1,this.pinch.scale=this.body.view.scale,this.touchTime=(new Date).valueOf())}},{key:"onTap",value:function(t){var e=this.getPointer(t.center),i=this.selectionHandler.options.multiselect&&(t.changedPointers[0].ctrlKey||t.changedPointers[0].metaKey);this.checkSelectionChanges(e,t,i),this.selectionHandler._generateClickEvent("click",t,e)}},{key:"onDoubleTap",value:function(t){var e=this.getPointer(t.center);this.selectionHandler._generateClickEvent("doubleClick",t,e)}},{key:"onHold",value:function(t){var e=this.getPointer(t.center),i=this.selectionHandler.options.multiselect;this.checkSelectionChanges(e,t,i),this.selectionHandler._generateClickEvent("click",t,e),this.selectionHandler._generateClickEvent("hold",t,e)}},{key:"onRelease",value:function(t){if((new Date).valueOf()-this.touchTime>10){var e=this.getPointer(t.center);this.selectionHandler._generateClickEvent("release",t,e),this.touchTime=(new Date).valueOf()}}},{key:"onContext",value:function(t){var e=this.getPointer({x:t.clientX,y:t.clientY});this.selectionHandler._generateClickEvent("oncontext",t,e)}},{key:"checkSelectionChanges",value:function(t,e){var i=void 0===arguments[2]?!1:arguments[2],o=this.selectionHandler._getSelectedEdgeCount(),n=this.selectionHandler._getSelectedNodeCount(),s=this.selectionHandler.getSelection(),r=void 0;r=i===!0?this.selectionHandler.selectAdditionalOnPoint(t):this.selectionHandler.selectOnPoint(t);var a=this.selectionHandler._getSelectedEdgeCount(),h=this.selectionHandler._getSelectedNodeCount(),d=this.selectionHandler.getSelection(),l=this._determineIfDifferent(s,d),u=l.nodesChanges,c=l.edgesChanges;h-n>0?(this.selectionHandler._generateClickEvent("selectNode",e,t),r=!0):0>h-n?(this.selectionHandler._generateClickEvent("deselectNode",e,t,s),r=!0):h===n&&u===!0&&(this.selectionHandler._generateClickEvent("deselectNode",e,t,s),this.selectionHandler._generateClickEvent("selectNode",e,t),r=!0),a-o>0?(this.selectionHandler._generateClickEvent("selectEdge",e,t),r=!0):0>a-o?(this.selectionHandler._generateClickEvent("deselectEdge",e,t,s),r=!0):a===o&&c===!0&&(this.selectionHandler._generateClickEvent("deselectEdge",e,t,s),this.selectionHandler._generateClickEvent("selectEdge",e,t),r=!0),r===!0&&this.selectionHandler._generateClickEvent("select",e,t)}},{key:"_determineIfDifferent",value:function(t,e){for(var i=!1,o=!1,n=0;nt&&(t=1e-5),t>10&&(t=10);var o=void 0;void 0!==this.drag&&this.drag.dragging===!0&&(o=this.canvas.DOMtoCanvas(this.drag.pointer));var n=this.body.view.translation,s=t/i,r=(1-s)*e.x+n.x*s,a=(1-s)*e.y+n.y*s;if(this.body.view.scale=t,this.body.view.translation={x:r,y:a},void 0!=o){var h=this.canvas.canvasToDOM(o);this.drag.pointer.x=h.x,this.drag.pointer.y=h.y}this.body.emitter.emit("_requestRedraw"),t>i?this.body.emitter.emit("zoom",{direction:"+",scale:this.body.view.scale}):this.body.emitter.emit("zoom",{direction:"-",scale:this.body.view.scale})}}},{key:"onMouseWheel",value:function(t){var e=0;if(t.wheelDelta?e=t.wheelDelta/120:t.detail&&(e=-t.detail/3),0!==e){var i=this.body.view.scale,o=e/10;0>e&&(o/=1-o),i*=1+o;var n=this.getPointer({x:t.clientX,y:t.clientY});this.zoom(i,n)}t.preventDefault()}},{key:"onMouseMove",value:function(t){var e=this,i=this.getPointer({x:t.clientX,y:t.clientY}),o=!1;if(void 0!==this.popup&&(this.popup.hidden===!1&&this._checkHidePopup(i),this.popup.hidden===!1&&(o=!0,this.popup.setPosition(i.x+3,i.y-5),this.popup.show())),this.options.keyboard.bindToWindow===!1&&this.options.keyboard.enabled===!0&&this.canvas.frame.focus(),o===!1&&(void 0!==this.popupTimer&&(clearInterval(this.popupTimer),this.popupTimer=void 0),this.drag.dragging||(this.popupTimer=setTimeout(function(){return e._checkShowPopup(i)},this.options.tooltipDelay))),this.options.hover===!0){var n=this.selectionHandler.getNodeAt(i);void 0===n&&(n=this.selectionHandler.getEdgeAt(i)),this.selectionHandler.hoverObject(n)}}},{key:"_checkShowPopup",value:function(t){var e=this.canvas._XconvertDOMtoCanvas(t.x),i=this.canvas._YconvertDOMtoCanvas(t.y),o={left:e,top:i,right:e,bottom:i},n=void 0===this.popupObj?void 0:this.popupObj.id,s=!1,r="node";if(void 0===this.popupObj){for(var a=this.body.nodeIndices,h=this.body.nodes,l=void 0,u=[],c=0;c0&&(this.popupObj=h[u[u.length-1]],s=!0)}if(void 0===this.popupObj&&s===!1){for(var p=this.body.edgeIndices,f=this.body.edges,m=void 0,v=[],c=0;c0&&(this.popupObj=f[v[v.length-1]],r="edge")}void 0!==this.popupObj?this.popupObj.id!==n&&(void 0===this.popup&&(this.popup=new d["default"](this.canvas.frame)),this.popup.popupTargetType=r,this.popup.popupTargetId=this.popupObj.id,this.popup.setPosition(t.x+3,t.y-5),this.popup.setText(this.popupObj.getTitle()),this.popup.show(),this.body.emitter.emit("showPopup",this.popupObj.id)):void 0!==this.popup&&(this.popup.hide(),this.body.emitter.emit("hidePopup"))}},{key:"_checkHidePopup",value:function(t){var e=this.selectionHandler._pointerToPositionObject(t),i=!1;if("node"===this.popup.popupTargetType){if(void 0!==this.body.nodes[this.popup.popupTargetId]&&(i=this.body.nodes[this.popup.popupTargetId].isOverlappingWith(e),i===!0)){var o=this.selectionHandler.getNodeAt(t);i=o.id===this.popup.popupTargetId}}else void 0===this.selectionHandler.getNodeAt(t)&&void 0!==this.body.edges[this.popup.popupTargetId]&&(i=this.body.edges[this.popup.popupTargetId].isOverlappingWith(e));i===!1&&(this.popupObj=void 0,this.popup.hide(),this.body.emitter.emit("hidePopup"))}}]),t}();e["default"]=u,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;i700&&(this.body.emitter.emit("fit",{duration:700}),this.touchTime=(new Date).valueOf())}},{key:"_stopMovement",value:function(){for(var t in this.boundFunctions)this.boundFunctions.hasOwnProperty(t)&&(this.body.emitter.off("initRedraw",this.boundFunctions[t]),this.body.emitter.emit("_stopRendering"));this.boundFunctions={}}},{key:"_moveUp",value:function(){this.body.view.translation.y+=this.options.keyboard.speed.y}},{key:"_moveDown",value:function(){this.body.view.translation.y-=this.options.keyboard.speed.y}},{key:"_moveLeft",value:function(){this.body.view.translation.x+=this.options.keyboard.speed.x}},{key:"_moveRight",value:function(){this.body.view.translation.x-=this.options.keyboard.speed.x}},{key:"_zoomIn",value:function(){this.body.view.scale*=1+this.options.keyboard.speed.zoom}},{key:"_zoomOut",value:function(){this.body.view.scale/=1+this.options.keyboard.speed.zoom}},{key:"configureKeyboardBindings",value:function(){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())})}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.add(t),i.selectionHandler.unselectAll(),i.showManipulatorToolbar())})}else this.body.data.edges.add(o),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}},{key:"_performEditEdge",value:function(t,e){var i=this,o={id:this.edgeBeingEditedId,from:t,to:e};if("function"==typeof this.options.editEdge){if(2!==this.options.editEdge.length)throw new Error("The function for edit does not support two arguments (data, callback)");this.options.editEdge(o,function(t){null===t||void 0===t||"editEdge"!==i.inMode?(i.body.edges[o.id].updateEdgeType(),i.body.emitter.emit("_redraw")):(i.body.data.edges.update(t),i.selectionHandler.unselectAll(),i.showManipulatorToolbar())})}else this.body.data.edges.update(o),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}}]),t}();e["default"]=h,t.exports=e["default"]},function(t,e){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"},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"},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,physics:!0,scaling:{min:[10,0,200,1],max:[30,0,200,1],label:{enabled:!1,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},shadow:{enabled:!1,size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},shape:["ellipse","box","circle","database","diamond","dot","square","star","text","triangle","triangleDown"],size:[25,0,200,1]},edges:{arrows:{to:{enabled:!1,scaleFactor:[1,0,3,.05]},middle:{enabled:!1,scaleFactor:[1,0,3,.05]},from:{enabled:!1,scaleFactor:[1,0,3,.05]}},color:{color:["color","#848484"],highlight:["color","#848484"],hover:["color","#848484"],inherit:["from","to","both",!0,!1],opacity:[1,0,1,.05]},dashes:!1,font:{color:["color","#343434"],size:[14,0,100,1],face:["arial","verdana","tahoma"],background:["color","none"],strokeWidth:[2,0,50,1],strokeColor:["color","#ffffff"],align:["horizontal","top","middle","bottom"]},hidden:!1,hoverWidth:[1.5,0,5,.1],physics:!0,scaling:{min:[1,0,100,1],max:[15,0,100,1],label:{enabled:!0,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},selectionWidth:[1.5,0,5,.1],selfReferenceSize:[20,0,200,1],shadow:{enabled:!1,size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},smooth:{enabled:!0,type:["dynamic","continuous","discrete","diagonalCross","straightCross","horizontal","vertical","curvedCW","curvedCCW"],roundness:[.5,0,1,.05]},width:[1,0,30,1]},layout:{hierarchical:{enabled:!1,levelSeparation:[150,20,500,5],direction:["UD","DU","LR","RL"],sortMethod:["hubsize","directed"]}},interaction:{dragNodes:!0,dragView:!0,hideEdgesOnDrag:!1,hideNodesOnDrag:!1,hover:!1,keyboard:{enabled:!1,speed:{x:[10,0,40,1],y:[10,0,40,1],zoom:[.02,0,.1,.005]},bindToWindow:!0},multiselect:!1,navigationButtons:!1,selectable:!0,selectConnectedEdges:!0,hoverConnectedEdges:!0,tooltipDelay:[300,0,1e3,25],zoomView:!0},manipulation:{enabled:!1,initiallyActive:!1},physics:{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;a + + backgroundColor.fill + string + 'white' + The chart fill color, as an HTML color string. + backgroundColor.stroke string @@ -308,12 +314,6 @@ var options = { 1 The border width, in pixels. - - backgroundColor.fill - string - 'white' - The chart fill color, as an HTML color string. - cameraPosition @@ -331,6 +331,43 @@ var options = { All parameters are optional. + + axisColor + string + '#4D4D4D' + The color of the axis lines and the text along the axis. + + + dataColor + string or object + {fill: '#7DC1FF', stroke: '#3267D2', strokeWidth: 1} + When dataColor is a string, it will set the color for both border and fill color of dots and bars. Applicable for styles dot-size, bar-size, and line. When an object, it can contain the properties descibed below. + + + dataColor.fill + string + '#7DC1FF' + The border color of the dots or bars. Applicable when using styles dot-size or bar-size. + + + dataColor.stroke + string + '#3267D2' + The fill color of the dots or bars. Applicable when using styles dot-size, bar-size, or line. + + + dataColor.strokeWidth + number + 1 + The line width of dots, bars and lines. Applicable for all styles. + + + gridColor + string + '#D3D3D3' + The color of the grid lines. + + height string diff --git a/lib/graph3d/Graph3d.js b/lib/graph3d/Graph3d.js index 3c6adf03..ef9547b9 100644 --- a/lib/graph3d/Graph3d.js +++ b/lib/graph3d/Graph3d.js @@ -58,6 +58,8 @@ function Graph3d(container, data, options) { this.animationPreload = false; this.camera = new Camera(); + this.camera.setArmRotation(1.0, 0.5); + this.camera.setArmLength(1.7); this.eye = new Point3d(0, 0, -1); // TODO: set eye.z about 3/4 of the width of the window? this.dataTable = null; // The original data table @@ -85,11 +87,14 @@ function Graph3d(container, data, options) { this.yBarWidth = 1; // TODO: customize axis range - // constants - this.colorAxis = '#4D4D4D'; - this.colorGrid = '#D3D3D3'; - this.colorDot = '#7DC1FF'; - this.colorDotBorder = '#3267D2'; + // colors + this.axisColor = '#4D4D4D'; + this.gridColor = '#D3D3D3'; + this.dataColor = { + fill: '#7DC1FF', + stroke: '#3267D2', + strokeWidth: 1 // px + }; // create a frame and canvas this.create(); @@ -823,21 +828,21 @@ Graph3d.prototype.setOptions = function (options) { if (options !== undefined) { // retrieve parameter values - if (options.width !== undefined) this.width = options.width; - if (options.height !== undefined) this.height = options.height; + if (options.width !== undefined) this.width = options.width; + if (options.height !== undefined) this.height = options.height; - if (options.xCenter !== undefined) this.defaultXCenter = options.xCenter; - if (options.yCenter !== undefined) this.defaultYCenter = options.yCenter; + if (options.xCenter !== undefined) this.defaultXCenter = options.xCenter; + if (options.yCenter !== undefined) this.defaultYCenter = options.yCenter; - if (options.filterLabel !== undefined) this.filterLabel = options.filterLabel; - if (options.legendLabel !== undefined) this.legendLabel = options.legendLabel; - if (options.xLabel !== undefined) this.xLabel = options.xLabel; - if (options.yLabel !== undefined) this.yLabel = options.yLabel; - if (options.zLabel !== undefined) this.zLabel = options.zLabel; + if (options.filterLabel !== undefined) this.filterLabel = options.filterLabel; + if (options.legendLabel !== undefined) this.legendLabel = options.legendLabel; + if (options.xLabel !== undefined) this.xLabel = options.xLabel; + if (options.yLabel !== undefined) this.yLabel = options.yLabel; + if (options.zLabel !== undefined) this.zLabel = options.zLabel; - if (options.xValueLabel !== undefined) this.xValueLabel = options.xValueLabel; - if (options.yValueLabel !== undefined) this.yValueLabel = options.yValueLabel; - if (options.zValueLabel !== undefined) this.zValueLabel = options.zValueLabel; + if (options.xValueLabel !== undefined) this.xValueLabel = options.xValueLabel; + if (options.yValueLabel !== undefined) this.yValueLabel = options.yValueLabel; + if (options.zValueLabel !== undefined) this.zValueLabel = options.zValueLabel; if (options.style !== undefined) { var styleNumber = this._getStyleNumber(options.style); @@ -878,14 +883,30 @@ Graph3d.prototype.setOptions = function (options) { this.camera.setArmRotation(cameraPosition.horizontal, cameraPosition.vertical); this.camera.setArmLength(cameraPosition.distance); } - else { - this.camera.setArmRotation(1.0, 0.5); - this.camera.setArmLength(1.7); + + // colors + if (options.axisColor !== undefined) this.axisColor = options.axisColor; + if (options.gridColor !== undefined) this.gridColor = options.gridColor; + if (options.dataColor) { + if (typeof options.dataColor === 'string') { + this.dataColor.fill = options.dataColor; + this.dataColor.stroke = options.dataColor; + } + else { + if (options.dataColor.fill) { + this.dataColor.fill = options.dataColor.fill; + } + if (options.dataColor.stroke) { + this.dataColor.stroke = options.dataColor.stroke; + } + if (options.dataColor.strokeWidth !== undefined) { + this.dataColor.strokeWidth = options.dataColor.strokeWidth; + } + } } + this._setBackgroundColor(options.backgroundColor); } - this._setBackgroundColor(options && options.backgroundColor); - this.setSize(this.width, this.height); // re-load the data @@ -996,14 +1017,14 @@ Graph3d.prototype._redrawLegend = function() { ctx.stroke(); } - ctx.strokeStyle = this.colorAxis; + ctx.strokeStyle = this.axisColor; ctx.strokeRect(left, top, widthMax, height); } if (this.style === Graph3d.STYLE.DOTSIZE) { // draw border around color bar - ctx.strokeStyle = this.colorAxis; - ctx.fillStyle = this.colorDot; + ctx.strokeStyle = this.axisColor; + ctx.fillStyle = this.dataColor.fill; ctx.beginPath(); ctx.moveTo(left, top); ctx.lineTo(right, top); @@ -1033,7 +1054,7 @@ Graph3d.prototype._redrawLegend = function() { ctx.textAlign = 'right'; ctx.textBaseline = 'middle'; - ctx.fillStyle = this.colorAxis; + ctx.fillStyle = this.axisColor; ctx.fillText(step.getCurrent(), left - 2 * gridLineLen, y); step.next(); @@ -1149,7 +1170,7 @@ Graph3d.prototype._redrawAxis = function() { if (this.showGrid) { from = this._convert3Dto2D(new Point3d(x, this.yMin, this.zMin)); to = this._convert3Dto2D(new Point3d(x, this.yMax, this.zMin)); - ctx.strokeStyle = this.colorGrid; + ctx.strokeStyle = this.gridColor; ctx.beginPath(); ctx.moveTo(from.x, from.y); ctx.lineTo(to.x, to.y); @@ -1158,7 +1179,7 @@ Graph3d.prototype._redrawAxis = function() { else { from = this._convert3Dto2D(new Point3d(x, this.yMin, this.zMin)); to = this._convert3Dto2D(new Point3d(x, this.yMin+gridLenX, this.zMin)); - ctx.strokeStyle = this.colorAxis; + ctx.strokeStyle = this.axisColor; ctx.beginPath(); ctx.moveTo(from.x, from.y); ctx.lineTo(to.x, to.y); @@ -1166,7 +1187,7 @@ Graph3d.prototype._redrawAxis = function() { from = this._convert3Dto2D(new Point3d(x, this.yMax, this.zMin)); to = this._convert3Dto2D(new Point3d(x, this.yMax-gridLenX, this.zMin)); - ctx.strokeStyle = this.colorAxis; + ctx.strokeStyle = this.axisColor; ctx.beginPath(); ctx.moveTo(from.x, from.y); ctx.lineTo(to.x, to.y); @@ -1188,7 +1209,7 @@ Graph3d.prototype._redrawAxis = function() { ctx.textAlign = 'left'; ctx.textBaseline = 'middle'; } - ctx.fillStyle = this.colorAxis; + ctx.fillStyle = this.axisColor; ctx.fillText(' ' + this.xValueLabel(step.getCurrent()) + ' ', text.x, text.y); step.next(); @@ -1206,7 +1227,7 @@ Graph3d.prototype._redrawAxis = function() { if (this.showGrid) { from = this._convert3Dto2D(new Point3d(this.xMin, step.getCurrent(), this.zMin)); to = this._convert3Dto2D(new Point3d(this.xMax, step.getCurrent(), this.zMin)); - ctx.strokeStyle = this.colorGrid; + ctx.strokeStyle = this.gridColor; ctx.beginPath(); ctx.moveTo(from.x, from.y); ctx.lineTo(to.x, to.y); @@ -1215,7 +1236,7 @@ Graph3d.prototype._redrawAxis = function() { else { from = this._convert3Dto2D(new Point3d(this.xMin, step.getCurrent(), this.zMin)); to = this._convert3Dto2D(new Point3d(this.xMin+gridLenY, step.getCurrent(), this.zMin)); - ctx.strokeStyle = this.colorAxis; + ctx.strokeStyle = this.axisColor; ctx.beginPath(); ctx.moveTo(from.x, from.y); ctx.lineTo(to.x, to.y); @@ -1223,7 +1244,7 @@ Graph3d.prototype._redrawAxis = function() { from = this._convert3Dto2D(new Point3d(this.xMax, step.getCurrent(), this.zMin)); to = this._convert3Dto2D(new Point3d(this.xMax-gridLenY, step.getCurrent(), this.zMin)); - ctx.strokeStyle = this.colorAxis; + ctx.strokeStyle = this.axisColor; ctx.beginPath(); ctx.moveTo(from.x, from.y); ctx.lineTo(to.x, to.y); @@ -1245,7 +1266,7 @@ Graph3d.prototype._redrawAxis = function() { ctx.textAlign = 'left'; ctx.textBaseline = 'middle'; } - ctx.fillStyle = this.colorAxis; + ctx.fillStyle = this.axisColor; ctx.fillText(' ' + this.yValueLabel(step.getCurrent()) + ' ', text.x, text.y); step.next(); @@ -1264,7 +1285,7 @@ Graph3d.prototype._redrawAxis = function() { while (!step.end()) { // TODO: make z-grid lines really 3d? from = this._convert3Dto2D(new Point3d(xText, yText, step.getCurrent())); - ctx.strokeStyle = this.colorAxis; + ctx.strokeStyle = this.axisColor; ctx.beginPath(); ctx.moveTo(from.x, from.y); ctx.lineTo(from.x - textMargin, from.y); @@ -1272,7 +1293,7 @@ Graph3d.prototype._redrawAxis = function() { ctx.textAlign = 'right'; ctx.textBaseline = 'middle'; - ctx.fillStyle = this.colorAxis; + ctx.fillStyle = this.axisColor; ctx.fillText(this.zValueLabel(step.getCurrent()) + ' ', from.x - 5, from.y); step.next(); @@ -1280,7 +1301,7 @@ Graph3d.prototype._redrawAxis = function() { ctx.lineWidth = 1; from = this._convert3Dto2D(new Point3d(xText, yText, this.zMin)); to = this._convert3Dto2D(new Point3d(xText, yText, this.zMax)); - ctx.strokeStyle = this.colorAxis; + ctx.strokeStyle = this.axisColor; ctx.beginPath(); ctx.moveTo(from.x, from.y); ctx.lineTo(to.x, to.y); @@ -1291,7 +1312,7 @@ Graph3d.prototype._redrawAxis = function() { // line at yMin xMin2d = this._convert3Dto2D(new Point3d(this.xMin, this.yMin, this.zMin)); xMax2d = this._convert3Dto2D(new Point3d(this.xMax, this.yMin, this.zMin)); - ctx.strokeStyle = this.colorAxis; + ctx.strokeStyle = this.axisColor; ctx.beginPath(); ctx.moveTo(xMin2d.x, xMin2d.y); ctx.lineTo(xMax2d.x, xMax2d.y); @@ -1299,7 +1320,7 @@ Graph3d.prototype._redrawAxis = function() { // line at ymax xMin2d = this._convert3Dto2D(new Point3d(this.xMin, this.yMax, this.zMin)); xMax2d = this._convert3Dto2D(new Point3d(this.xMax, this.yMax, this.zMin)); - ctx.strokeStyle = this.colorAxis; + ctx.strokeStyle = this.axisColor; ctx.beginPath(); ctx.moveTo(xMin2d.x, xMin2d.y); ctx.lineTo(xMax2d.x, xMax2d.y); @@ -1310,7 +1331,7 @@ Graph3d.prototype._redrawAxis = function() { // line at xMin from = this._convert3Dto2D(new Point3d(this.xMin, this.yMin, this.zMin)); to = this._convert3Dto2D(new Point3d(this.xMin, this.yMax, this.zMin)); - ctx.strokeStyle = this.colorAxis; + ctx.strokeStyle = this.axisColor; ctx.beginPath(); ctx.moveTo(from.x, from.y); ctx.lineTo(to.x, to.y); @@ -1318,7 +1339,7 @@ Graph3d.prototype._redrawAxis = function() { // line at xMax from = this._convert3Dto2D(new Point3d(this.xMax, this.yMin, this.zMin)); to = this._convert3Dto2D(new Point3d(this.xMax, this.yMax, this.zMin)); - ctx.strokeStyle = this.colorAxis; + ctx.strokeStyle = this.axisColor; ctx.beginPath(); ctx.moveTo(from.x, from.y); ctx.lineTo(to.x, to.y); @@ -1343,7 +1364,7 @@ Graph3d.prototype._redrawAxis = function() { ctx.textAlign = 'left'; ctx.textBaseline = 'middle'; } - ctx.fillStyle = this.colorAxis; + ctx.fillStyle = this.axisColor; ctx.fillText(xLabel, text.x, text.y); } @@ -1366,7 +1387,7 @@ Graph3d.prototype._redrawAxis = function() { ctx.textAlign = 'left'; ctx.textBaseline = 'middle'; } - ctx.fillStyle = this.colorAxis; + ctx.fillStyle = this.axisColor; ctx.fillText(yLabel, text.x, text.y); } @@ -1380,7 +1401,7 @@ Graph3d.prototype._redrawAxis = function() { text = this._convert3Dto2D(new Point3d(xText, yText, zText)); ctx.textAlign = 'right'; ctx.textBaseline = 'middle'; - ctx.fillStyle = this.colorAxis; + ctx.fillStyle = this.axisColor; ctx.fillText(zLabel, text.x - offset, text.y); } }; @@ -1425,6 +1446,8 @@ Graph3d.prototype._redrawDataGrid = function() { topSideVisible, fillStyle, strokeStyle, lineWidth, h, s, v, zAvg; + ctx.lineJoin = 'round'; + ctx.lineCap = 'round'; if (this.dataPoints === undefined || this.dataPoints.length <= 0) return; // TODO: throw exception? @@ -1488,16 +1511,15 @@ Graph3d.prototype._redrawDataGrid = function() { else { v = 1; fillStyle = this._hsv2rgb(h, s, v); - strokeStyle = this.colorAxis; + strokeStyle = this.axisColor; } } else { fillStyle = 'gray'; - strokeStyle = this.colorAxis; + strokeStyle = this.axisColor; } - lineWidth = 0.5; - ctx.lineWidth = lineWidth; + ctx.lineWidth = this._getStrokeWidth(point); ctx.fillStyle = fillStyle; ctx.strokeStyle = strokeStyle; ctx.beginPath(); @@ -1517,21 +1539,12 @@ Graph3d.prototype._redrawDataGrid = function() { right = this.dataPoints[i].pointRight; top = this.dataPoints[i].pointTop; - if (point !== undefined) { - if (this.showPerspective) { - lineWidth = 2 / -point.trans.z; - } - else { - lineWidth = 2 * -(this.eye.z / this.camera.getArmLength()); - } - } - if (point !== undefined && right !== undefined) { // calculate Hue from the current value. At zMin the hue is 240, at zMax the hue is 0 zAvg = (point.point.z + right.point.z) / 2; h = (1 - (zAvg - this.zMin) * this.scale.z / this.verticalRatio) * 240; - ctx.lineWidth = lineWidth; + ctx.lineWidth = this._getStrokeWidth(point) * 2; ctx.strokeStyle = this._hsv2rgb(h, 1, 1); ctx.beginPath(); ctx.moveTo(point.screen.x, point.screen.y); @@ -1544,7 +1557,7 @@ Graph3d.prototype._redrawDataGrid = function() { zAvg = (point.point.z + top.point.z) / 2; h = (1 - (zAvg - this.zMin) * this.scale.z / this.verticalRatio) * 240; - ctx.lineWidth = lineWidth; + ctx.lineWidth = this._getStrokeWidth(point) * 2; ctx.strokeStyle = this._hsv2rgb(h, 1, 1); ctx.beginPath(); ctx.moveTo(point.screen.x, point.screen.y); @@ -1555,6 +1568,18 @@ Graph3d.prototype._redrawDataGrid = function() { } }; +Graph3d.prototype._getStrokeWidth = function(point) { + if (point !== undefined) { + if (this.showPerspective) { + return 1 / -point.trans.z * this.dataColor.strokeWidth; + } + else { + return -(this.eye.z / this.camera.getArmLength()) * this.dataColor.strokeWidth; + } + } + + return this.dataColor.strokeWidth; +}; /** * Draw all datapoints as dots. @@ -1596,7 +1621,7 @@ Graph3d.prototype._redrawDataDot = function() { //var from = this._convert3Dto2D(new Point3d(point.point.x, point.point.y, this.zMin)); var from = this._convert3Dto2D(point.bottom); ctx.lineWidth = 1; - ctx.strokeStyle = this.colorGrid; + ctx.strokeStyle = this.gridColor; ctx.beginPath(); ctx.moveTo(from.x, from.y); ctx.lineTo(point.screen.x, point.screen.y); @@ -1631,8 +1656,8 @@ Graph3d.prototype._redrawDataDot = function() { borderColor = this._hsv2rgb(hue, 1, 0.8); } else if (this.style === Graph3d.STYLE.DOTSIZE) { - color = this.colorDot; - borderColor = this.colorDotBorder; + color = this.dataColor.fill; + borderColor = this.dataColor.stroke; } else { // calculate Hue from the current value. At zMin the hue is 240, at zMax the hue is 0 @@ -1642,7 +1667,7 @@ Graph3d.prototype._redrawDataDot = function() { } // draw the circle - ctx.lineWidth = 1.0; + ctx.lineWidth = this._getStrokeWidth(point); ctx.strokeStyle = borderColor; ctx.fillStyle = color; ctx.beginPath(); @@ -1682,6 +1707,9 @@ Graph3d.prototype._redrawDataBar = function() { }; this.dataPoints.sort(sortDepth); + ctx.lineJoin = 'round'; + ctx.lineCap = 'round'; + // draw the datapoints as bars var xWidth = this.xBarWidth / 2; var yWidth = this.yBarWidth / 2; @@ -1697,8 +1725,8 @@ Graph3d.prototype._redrawDataBar = function() { borderColor = this._hsv2rgb(hue, 1, 0.8); } else if (this.style === Graph3d.STYLE.BARSIZE) { - color = this.colorDot; - borderColor = this.colorDotBorder; + color = this.dataColor.fill; + borderColor = this.dataColor.stroke; } else { // calculate Hue from the current value. At zMin the hue is 240, at zMax the hue is 0 @@ -1771,7 +1799,7 @@ Graph3d.prototype._redrawDataBar = function() { }); // draw the ordered surfaces - ctx.lineWidth = 1; + ctx.lineWidth = this._getStrokeWidth(point); ctx.strokeStyle = borderColor; ctx.fillStyle = color; // NOTE: we start at j=2 instead of j=0 as we don't need to draw the two surfaces at the backside @@ -1816,20 +1844,20 @@ Graph3d.prototype._redrawDataLine = function() { if (this.dataPoints.length > 0) { point = this.dataPoints[0]; - ctx.lineWidth = 1; // TODO: make customizable - ctx.strokeStyle = 'blue'; // TODO: make customizable + ctx.lineWidth = this._getStrokeWidth(point); + ctx.lineJoin = 'round'; + ctx.lineCap = 'round'; + ctx.strokeStyle = this.dataColor.stroke; ctx.beginPath(); ctx.moveTo(point.screen.x, point.screen.y); - } - // draw the datapoints as colored circles - for (i = 1; i < this.dataPoints.length; i++) { - point = this.dataPoints[i]; - ctx.lineTo(point.screen.x, point.screen.y); - } + // draw the datapoints as colored circles + for (i = 1; i < this.dataPoints.length; i++) { + point = this.dataPoints[i]; + ctx.lineTo(point.screen.x, point.screen.y); + } - // finish the line - if (this.dataPoints.length > 0) { + // finish the line ctx.stroke(); } };