From bea041f8a8b1857988b992de0691e971bda8b147 Mon Sep 17 00:00:00 2001 From: Salustiano de Paula Franco Neto Date: Thu, 21 Sep 2023 15:16:06 -0300 Subject: [PATCH] Ajuste tooltip Partograma --- dist/vis.js | 35 ++++++++++++++-- dist/vis.map | 2 +- dist/vis.min.js | 42 +++++++++---------- lib/DOMutil.js | 27 ++++++++++++ .../component/graph2d_types/points.js | 3 +- 5 files changed, 83 insertions(+), 26 deletions(-) diff --git a/dist/vis.js b/dist/vis.js index 65c4afec4..73e3eb175 100644 --- a/dist/vis.js +++ b/dist/vis.js @@ -5,7 +5,7 @@ * A dynamic, browser-based visualization library. * * @version 4.15.4 - * @date 2023-09-15 + * @date 2023-09-21 * * @license * Copyright (C) 2011-2016 Almende B.V, http://almende.com @@ -7883,6 +7883,33 @@ return /******/ (function(modules) { // webpackBootstrap points.push(partogramPoint); } break; + case 'partogram-contraction': + if (props.partogramContraction && !isNaN(y) && !isNaN(x)) { + var colorFill = '#3262DB'; + if (props.partogramContraction == 'EMPTY_CIRCLE') { + colorFill = '#FFFFFF'; + } + + var sizeChart = 0.65 * groupTemplate.size; + var _circle = exports.getSVGElement('circle', JSONcontainer, svgContainer); + _circle.setAttributeNS(null, 'cx', x); + _circle.setAttributeNS(null, 'cy', y); + _circle.setAttributeNS(null, 'r', sizeChart); + _circle.setAttributeNS(null, 'stroke', '#3262DB'); + _circle.setAttributeNS(null, 'fill', colorFill); + _circle.setAttributeNS(null, 'stroke-width', 1); + points.push(_circle); + + if (props.partogramContraction == 'SEMI_CIRCLE') { + var path = exports.getSVGElement('path', JSONcontainer, svgContainer); + path.setAttributeNS(null, 'd', 'M' + (x - sizeChart) + ',' + y + ' a' + sizeChart + ',' + sizeChart + ' 0 0,1 ' + sizeChart * 2 + ',0'); + path.setAttributeNS(null, 'stroke', '#3262DB'); + path.setAttributeNS(null, 'fill', '#FFFFFF'); + path.setAttributeNS(null, 'stroke-width', 1); + points.push(path); + } + } + break; } //handle label @@ -28796,7 +28823,8 @@ return /******/ (function(modules) { // webpackBootstrap screen_yAvg = d.screen_yAvg, screen_yMax = d.screen_yMax, calculateAllPoints = d.calculateAllPoints, - partogramPosition = d.partogramPosition; + partogramPosition = d.partogramPosition, + partogramContraction = d.partogramContraction; var props = { maxValue: maxValue, @@ -28814,7 +28842,8 @@ return /******/ (function(modules) { // webpackBootstrap screen_yAvg: screen_yAvg, screen_yMax: screen_yMax, calculateAllPoints: calculateAllPoints, - partogramPosition: partogramPosition + partogramPosition: partogramPosition, + partogramContraction: partogramContraction }; if (d.referenceLine) continue; if (!callback) { diff --git a/dist/vis.map b/dist/vis.map index 7f1539f1a..04345257f 100644 --- a/dist/vis.map +++ b/dist/vis.map @@ -1 +1 @@ -{"version":3,"sources":["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","TimelineChart","timeline","Core","DateUtil","Range","stack","TimeStep","components","items","Item","BackgroundItem","BoxItem","PointItem","RangeItem","BackgroundGroup","Component","CurrentTime","CustomTime","DataAxis","DataScale","GraphGroup","Group","ItemSet","Legend","LineGraph","TimeAxis","DrawLabels","DrawLines","TimelineChartDataAxis","TimelineChartLineGraph","Network","network","Images","dotparser","gephiParser","allOptions","convertDot","input","DOTToGraph","convertGephi","options","parseGephi","moment","Hammer","keycharm","_typeof","Symbol","iterator","obj","constructor","prototype","uuid","isNumber","object","Number","recursiveDOMDelete","DOMobject","hasChildNodes","firstChild","removeChild","giveRange","min","max","total","value","scale","Math","isString","String","isDate","Date","ASPDateRegex","exec","isNaN","parse","randomUUID","v4","assignAllKeys","prop","hasOwnProperty","fillIfDefined","a","b","allowDeletion","arguments","length","undefined","protoExtend","i","other","extend","selectiveExtend","props","Array","isArray","Error","selectiveDeepExtend","TypeError","Object","deepExtend","selectiveNotDeepExtend","indexOf","push","equalArray","len","convert","type","match","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","throttle","fn","wait","timeout","needExecution","throttled","setTimeout","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","cssUtil","cssText","styles","style","trim","parts","keys","addCssText","currentStyles","newStyles","removeCssText","removeStyles","HSVToRGB","floor","f","q","t","test","isValidRGBA","rgba","selectiveBridgeObject","fields","referenceObject","objectTo","create","bridgeObject","insertSort","compare","k","j","mergeOptions","mergeTarget","globalOptions","enabled","binarySearchCustom","orderedItems","comparator","field","field2","iteration","low","high","middle","item","searchResult","binarySearchValue","sidePreference","prevValue","nextValue","easingFunctions","linear","easeInQuad","easeOutQuad","easeInOutQuad","easeInCubic","easeOutCubic","easeInOutCubic","easeInQuart","easeOutQuart","easeInOutQuart","easeInQuint","easeOutQuint","easeInOutQuint","require","global","hooks","hookCallback","apply","isObject","hasOwnProp","isObjectEmpty","getOwnPropertyNames","isUndefined","res","createUTC","format","locale","strict","createLocalOrUTC","utc","defaultParsingFlags","empty","unusedTokens","unusedInput","overflow","charsLeftOver","nullInput","invalidEra","invalidMonth","invalidFormat","userInvalidated","iso","parsedDateParts","era","meridiem","rfc2822","weekdayMismatch","getParsingFlags","_pf","isValid","_isValid","flags","parsedParts","some","isNowValid","_d","getTime","invalidWeekday","_strict","bigHour","isFrozen","createInvalid","NaN","copyConfig","to","from","val","_isAMomentObject","_i","_f","_l","_tzm","_isUTC","_offset","_locale","momentProperties","Moment","config","updateInProgress","updateOffset","warn","msg","suppressDeprecationWarnings","console","deprecate","firstTime","deprecationHandler","arg","args","deprecateSimple","name","deprecations","isFunction","Function","set","_config","_dayOfMonthOrdinalParseLenient","RegExp","_dayOfMonthOrdinalParse","source","_ordinalParse","mergeConfigs","parentConfig","childConfig","Locale","calendar","mom","now","output","_calendar","zeroFill","number","targetLength","forceSign","absNumber","abs","zerosToFill","pow","addFormatToken","token","padded","ordinal","func","formatTokenFunctions","localeData","removeFormattingTokens","makeFormatFunction","formattingTokens","formatMoment","expandFormat","formatFunctions","invalidDate","replaceLongDateFormatTokens","longDateFormat","localFormattingTokens","lastIndex","_longDateFormat","formatUpper","toUpperCase","tok","_invalidDate","_ordinal","relativeTime","withoutSuffix","string","isFuture","_relativeTime","pastFuture","diff","addUnitAlias","unit","shorthand","lowerCase","toLowerCase","aliases","normalizeUnits","units","normalizeObjectUnits","inputObject","normalizedProp","normalizedInput","addUnitPriority","priority","priorities","getPrioritizedUnits","unitsObj","u","sort","isLeapYear","year","absFloor","ceil","toInt","argumentForCoercion","coercedNumber","isFinite","makeGetSet","keepTime","set$1","get","month","date","daysInMonth","stringGet","stringSet","prioritized","addRegexToken","regex","strictRegex","regexes","isStrict","getParseRegexForToken","unescapeFormat","regexEscape","matched","p1","p2","p3","p4","addParseToken","tokens","addWeekParseToken","_w","addTimeToArrayFromToken","_a","mod","n","x","modMonth","localeMonths","_months","isFormat","MONTHS_IN_FORMAT","localeMonthsShort","_monthsShort","handleStrictParse","monthName","ii","llc","toLocaleLowerCase","_monthsParse","_longMonthsParse","_shortMonthsParse","monthsShort","months","localeMonthsParse","_monthsParseExact","setMonth","dayOfMonth","monthsParse","getSetMonth","getDaysInMonth","monthsShortRegex","computeMonthsParse","_monthsShortStrictRegex","_monthsShortRegex","defaultMonthsShortRegex","monthsRegex","_monthsStrictRegex","_monthsRegex","defaultMonthsRegex","cmpLenRev","shortPieces","longPieces","mixedPieces","daysInYear","getIsLeapYear","createDate","y","M","ms","getFullYear","setFullYear","createUTCDate","UTC","getUTCFullYear","setUTCFullYear","firstWeekOffset","dow","doy","fwd","getUTCDay","dayOfYearFromWeeks","week","weekday","resYear","resDayOfYear","localWeekday","weekOffset","dayOfYear","weekOfYear","resWeek","weeksInYear","weekOffsetNext","localeWeek","_week","localeFirstDayOfWeek","localeFirstDayOfYear","getSetWeek","add","getSetISOWeek","parseWeekday","weekdaysParse","parseIsoWeekday","shiftWeekdays","ws","concat","localeWeekdays","weekdays","_weekdays","day","localeWeekdaysShort","_weekdaysShort","localeWeekdaysMin","_weekdaysMin","handleStrictParse$1","weekdayName","_weekdaysParse","_shortWeekdaysParse","_minWeekdaysParse","weekdaysMin","weekdaysShort","localeWeekdaysParse","_weekdaysParseExact","_fullWeekdaysParse","getSetDayOfWeek","getDay","getSetLocaleDayOfWeek","getSetISODayOfWeek","weekdaysRegex","computeWeekdaysParse","_weekdaysStrictRegex","_weekdaysRegex","defaultWeekdaysRegex","weekdaysShortRegex","_weekdaysShortStrictRegex","_weekdaysShortRegex","defaultWeekdaysShortRegex","weekdaysMinRegex","_weekdaysMinStrictRegex","_weekdaysMinRegex","defaultWeekdaysMinRegex","minp","shortp","longp","minPieces","hFormat","hours","kFormat","lowercase","minutes","matchMeridiem","_meridiemParse","localeIsPM","charAt","localeMeridiem","isLower","commonPrefix","arr1","arr2","minl","normalizeLocale","chooseLocale","names","next","loadLocale","globalLocale","oldLocale","locales","_abbr","code","getSetGlobalLocale","values","data","getLocale","defineLocale","baseConfig","abbr","parentLocale","localeFamilies","updateLocale","tmpLocale","listLocales","checkOverflow","MONTH","DATE","YEAR","HOUR","MINUTE","SECOND","MILLISECOND","_overflowDayOfYear","_overflowWeeks","WEEK","_overflowWeekday","WEEKDAY","configFromISO","l","allowTime","dateFormat","timeFormat","tzFormat","extendedIsoRegex","basicIsoRegex","isoDates","isoTimes","tzRegex","configFromStringAndFormat","extractFromRFC2822Strings","yearStr","monthStr","dayStr","hourStr","minuteStr","secondStr","untruncateYear","defaultLocaleMonthsShort","preprocessRFC2822","checkWeekday","weekdayStr","parsedInput","defaultLocaleWeekdaysShort","calculateOffset","obsOffset","militaryOffset","numOffset","obsOffsets","hm","configFromRFC2822","parsedArray","setUTCMinutes","getUTCMinutes","configFromString","aspNetJsonRegex","createFromInputFallback","defaults","currentDateArray","nowValue","_useUTC","getUTCMonth","getUTCDate","getMonth","getDate","configFromArray","currentDate","expectedWeekday","yearToUse","dayOfYearFromWeekInfo","_dayOfYear","_nextDay","w","weekYear","temp","weekdayOverflow","curWeek","GG","W","E","createLocal","gg","ISO_8601","RFC_2822","skipped","stringLength","totalParsedInputLength","_meridiem","meridiemFixWrap","erasConvertYear","hour","isPm","meridiemHour","isPM","configFromStringAndArray","tempConfig","bestMoment","scoreToBeat","currentScore","validFormatFound","bestFormatIsValid","score","configFromObject","dayOrDate","minute","second","millisecond","createFromConfig","prepareConfig","preparse","configFromInput","isUTC","pickBy","moments","isDurationValid","unitHasDecimal","ordering","parseFloat","isValid$1","createInvalid$1","createDuration","Duration","duration","years","quarters","quarter","weeks","isoWeek","days","seconds","milliseconds","_milliseconds","_days","_data","_bubble","isDuration","absRound","round","compareArrays","array1","array2","dontConvert","lengthDiff","diffs","offset","separator","utcOffset","sign","offsetFromString","matcher","chunk","matches","chunkOffset","cloneWithOffset","model","clone","setTime","local","getDateOffset","getTimezoneOffset","getSetOffset","keepLocalTime","keepMinutes","localAdjust","matchShortOffset","_changeInProgress","addSubtract","getSetZone","setOffsetToUTC","setOffsetToLocal","subtract","setOffsetToParsedOffset","tZone","matchOffset","hasAlignedHourOffset","isDaylightSavingTime","isDaylightSavingTimeShifted","_isDSTShifted","isLocal","isUtcOffset","isUtc","ret","diffRes","aspNetRegex","isoRegex","parseIso","momentsDifference","inp","positiveMomentsDifference","base","isAfter","isBefore","createAdder","direction","period","dur","tmp","isAdding","isMomentInput","isNumberOrStringArray","isMomentInputObject","property","objectTest","propertyTest","properties","arrayTest","dataTypeTest","filter","isCalendarSpec","getCalendarFormat","myMoment","calendar$1","time","formats","sod","startOf","calendarFormat","localInput","endOf","isBetween","inclusivity","localFrom","localTo","isSame","inputMs","isSameOrAfter","isSameOrBefore","asFloat","that","zoneDelta","monthDiff","anchor2","adjust","wholeMonthDiff","anchor","keepOffset","inspect","prefix","datetime","suffix","zone","inputString","defaultFormatUtc","defaultFormat","postformat","humanize","fromNow","toNow","newLocaleData","mod$1","dividend","divisor","localStartOfDate","MS_PER_400_YEARS","utcStartOfDate","startOfDate","isoWeekday","MS_PER_MINUTE","MS_PER_HOUR","MS_PER_SECOND","unix","toObject","toJSON","isValid$2","parsingFlags","invalidAt","creationData","localeEras","eras","_eras","since","until","Infinity","localeErasParse","eraName","narrow","localeErasConvertYear","dir","getEraName","getEraNarrow","getEraAbbr","getEraYear","erasNameRegex","computeErasParse","_erasNameRegex","_erasRegex","erasAbbrRegex","_erasAbbrRegex","erasNarrowRegex","_erasNarrowRegex","matchEraAbbr","matchEraName","matchEraNarrow","matchEraYearOrdinal","_eraYearOrdinalRegex","matchUnsigned","abbrPieces","namePieces","narrowPieces","addWeekYearFormatToken","getter","getSetWeekYear","getSetWeekYearHelper","getSetISOWeekYear","getISOWeeksInYear","getISOWeeksInISOWeekYear","isoWeekYear","getWeeksInYear","weekInfo","getWeeksInWeekYear","weeksTarget","setWeekAll","dayOfYearData","getSetQuarter","getSetDayOfYear","parseMs","getZoneAbbr","getZoneName","createUnix","createInZone","parseZone","preParsePostFormat","get$1","setter","listMonthsImpl","out","listWeekdaysImpl","localeSorted","shift","listMonths","listMonthsShort","listWeekdays","listWeekdaysShort","listWeekdaysMin","mathAbs","addSubtract$1","add$1","subtract$1","absCeil","bubble","monthsFromDays","monthsToDays","daysToMonths","as","valueOf$1","makeAs","alias","clone$1","get$2","makeGetter","substituteTimeAgo","relativeTime$1","posNegDuration","thresholds","ss","getSetRelativeTimeRounding","roundingFunction","getSetRelativeTimeThreshold","threshold","limit","argWithSuffix","argThresholds","withSuffix","th","assign","toISOString$1","totalSign","ymSign","daysSign","hmsSign","abs$1","asSeconds","toFixed","fun","defaultCalendar","sameDay","nextDay","nextWeek","lastDay","lastWeek","sameElse","defaultLongDateFormat","LTS","LT","L","LL","LLL","LLLL","defaultDayOfMonthOrdinalParse","defaultRelativeTime","future","past","mm","hh","dd","ww","MM","yy","match1","match2","match3","match4","match6","match1to2","match3to4","match5to6","match1to3","match1to4","match1to6","matchSigned","matchTimestamp","matchWord","o","defaultLocaleMonths","parseTwoDigitYear","getSetYear","defaultLocaleWeek","defaultLocaleWeekdays","defaultLocaleWeekdaysMin","kInput","_isPm","pos","pos1","pos2","defaultLocaleMeridiemParse","getSetHour","dayOfMonthOrdinalParse","meridiemParse","UT","GMT","EDT","EST","CDT","CST","MDT","MST","PDT","PST","prototypeMin","prototypeMax","invalid","lang","erasParse","eraYearOrdinalParse","getSetDayOfMonth","getSetMinute","getSetSecond","getSetMillisecond","proto","for","eraNarrow","eraAbbr","eraYear","isoWeeks","weeksInWeekYear","isoWeeksInYear","isoWeeksInISOWeekYear","isDST","zoneAbbr","zoneName","dates","isDSTShifted","proto$1","firstDayOfYear","firstDayOfWeek","langData","asMilliseconds","asMinutes","asHours","asDays","asWeeks","asMonths","asQuarters","asYears","proto$2","toIsoString","version","relativeTimeRounding","relativeTimeThreshold","HTML5_FMT","DATETIME_LOCAL","DATETIME_LOCAL_SECONDS","DATETIME_LOCAL_MS","TIME","TIME_SECONDS","TIME_MS","webpackPolyfill","paths","children","webpackContext","req","resolve","buf","oct","_hexToByte","unparse","bth","_byteToHex","v1","clockseq","_clockseq","msecs","nsecs","_lastNSecs","dt","_lastMSecs","tl","tmh","node","_nodeId","rnds","random","rng","_rng","globalVar","crypto","getRandomValues","_rnds8","Uint8Array","_rnds","_seedBytes","extractStyleValue","styleKey","stylesStr","styleList","styleEntry","find","valueStart","getDirectionalArrowSize","baseSize","_Constants","ARROW","calculateSize","getArrowAvgMinHeight","baseHeight","height","CROSS","size","margin","adjustArrowAvgPositionToFitContainer","currentY","baseContainerY","containerHeight","arrowAvgMinSize","highestPossibleY","lowestPossibleY","getPartogramPoint","_ref","JSONcontainer","svgContainer","groupTemplate","group","getSVGElement","setAttribute","PARTOGRAM_HEAD_POSITION_DEGREE","partogramPosition","circle","append","lineCenter","setAttributeElement","y1","y2","lineLeft","x1","transform","lineRight","x2","line","_ref2","_ref2$x","_ref2$y","_ref2$x2","_ref2$y2","prepareElements","elementType","redundant","used","cleanupElements","resetElements","document","createElementNS","appendChild","getDOMElement","DOMContainer","insertBefore","createElement","drawPoint","labelObj","points","setAttributeNS","rect","_polygonUp","_polygonDown","baseY","_props$size","customStyles","baseArrowSize","directionArrow","crossHalfSize","strokeWidthUnconverted","strokeWidth","arrowAvgRequestedHeight","arrowAvgMinHeight","arrowAvgHeight","downLeftPt","downRightPt","downBottomPt","downLineToCenterPt","crossVerticalLine","crossHorizontalLine","upLeftPt","upRightPt","upTopPt","upLineToCenterPt","calculateAllPoints","y_min","screen_yMin","y_max","screen_yMax","y_avg","screen_yAvg","polygonDown","polygonCross","polygonUp","alertMin","stroke","alertColor","fill","alertMax","alertMed","rectangle","width","partogramPoint","label","xOffset","yOffset","content","textContent","point","tooltip","rowId","polygonType","getAttribute","attachEvents","ele","eve","drawBar","defineProperty","freeze","padding","right","BOLUS","radius","INFUSION_RATE","OP","OEA","OET","OEP","ODP","ODT","ODA","OS","IND","_options","_fieldId","fieldId","_type","_subscribers","setOptions","queue","_queue","destroy","on","subscribers","subscribe","off","unsubscribe","_trigger","params","senderId","subscriber","addedIds","me","_addItem","update","updatedIds","oldData","updatedData","addOrUpdate","oldItem","_updateItem","ids","firstType","returnType","itemIds","itemId","_getItem","order","_sort","_filterFields","resultant","getIds","getDataSet","mappedItems","filteredItem","itemFields","av","bv","remove","removedId","removedIds","_remove","clear","maxField","itemField","minField","distinct","fieldType","count","exists","types","raw","converted","JSON","stringify","delay","_timeout","_extended","_flushIfNeeded","flush","methods","original","method","context","entry","clearTimeout","_ids","_onEvent","setData","refresh","oldIds","newIds","added","removed","viewOptions","getArguments","defaultFilter","dataSet","updated","container","SyntaxError","containerElement","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","dotSizeRatio","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","bx","by","ex","ey","ez","dx","dy","dz","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","innerText","onmousedown","_onMouseDown","ontouchstart","_onTouchStart","onmousewheel","_onWheel","ontooltip","_onTooltip","onkeydown","setSize","_resizeCanvas","clientHeight","animationStart","slider","play","animationStop","stop","_resizeCenter","setCameraPosition","horizontal","vertical","distance","getCameraPosition","getArmRotation","_readData","_redrawFilter","animationAutoStart","cameraPosition","styleNumber","showAnimationControls","_redrawSlider","_redrawClear","_redrawAxis","_redrawDataGrid","_redrawDataLine","_redrawDataBar","_redrawDataDot","_redrawInfo","_redrawLegend","getContext","clearRect","widthMin","widthMax","dotSize","ctx","lineWidth","font","ymax","hue","_hsv2rgb","strokeStyle","beginPath","moveTo","lineTo","strokeRect","fillStyle","closePath","step","start","getCurrent","end","textAlign","textBaseline","fillText","innerHTML","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","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","snapValue","parameters","emit","boundingRect","mouseX","mouseY","tooltipTimeout","_hideTooltip","dataPoint","_dataPointFromXY","_showTooltip","ontouchmove","_onTouchMove","ontouchend","_onTouchEnd","delta","wheelDelta","detail","oldLength","newLength","_insideTriangle","triangle","bs","cs","closestDataPoint","closestDist","triangle1","triangle2","distX","distY","sqrt","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","step2","step5","toPrecision","getStep","_interopRequireDefault","__esModule","default","groups","forthArgument","defaultOptions","autoResize","throttleRedraw","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","groupNow","eventProperties","groupId","eventPropertiesOld","_","onmouseleave","fitDone","getItemRange","setWindow","animation","fit","setGroups","setItems","_redraw","_Configurator","_Configurator2","_Validator","_Validator2","printStyle","configureOptions","_createConfigurator","markDirty","refreshItems","validate","selection","getSelection","setSelection","newDataSet","focus","itemData","getDataRange","minItem","maxItem","getStart","getEnd","factor","show","repositionX","getWidthLeft","getWidthRight","lhs","rhs","dataset","centerContainerRect","centerContainer","itemFromTarget","groupFromTarget","customTime","customTimeFromTarget","snap","snappedTime","what","foreground","labelSet","pageX","srcEvent","pageY","setColumnCount","columnCount","merge","_classCallCheck","instance","Constructor","_createClass","defineProperties","descriptor","enumerable","configurable","writable","protoProps","staticProps","_ColorPicker","_ColorPicker2","Configurator","parentModule","defaultContainer","pixelRatio","changedOptions","allowCreation","initialized","popupCounter","showButton","moduleOptions","domElements","popupDiv","popupLimit","popupHistory","colorPicker","wrapper","_removePopup","_clean","_this","_handleObject","_makeItem","_makeHeader","generateButton","_printOptions","onmouseover","onmouseout","optionsContainer","_push","_showPopupIfNeeded","path","_len","_key","div","objectLabel","select","selectedValue","selected","_update","_makeLabel","err","popupString","popupValue","oninput","itemIndex","_setupPopup","_this2","html","hideTimeout","deleteTimeout","_this3","correspondingElement","checkbox","checked","_this4","defaultColor","_showColorPicker","_this5","insertTo","setColor","setUpdateCallback","colorString","setCloseCallback","checkOnly","visibleInSet","subObj","newPath","_getValue","_handleArray","_makeTextInput","_makeCheckbox","draw","physics","solver","enabledPath","enabledValue","_label","error","_makeColorField","_makeDropdown","_makeRange","_constructOptions","optionsObj","pointer","getOptions","hammerUtil","ColorPicker","generated","centerCoordinates","hueCircle","initialColor","previousColor","applied","updateCallback","closeCallback","hammer","_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","_rgbaArray","rgbObj","alpha","_setColor","display","_generateHueCircle","_hide","_updatePicker","alert","angleConvert","colorPickerSelector","colorPickerCanvas","pixelRation","devicePixelRatio","webkitBackingStorePixelRatio","mozBackingStorePixelRatio","msBackingStorePixelRatio","oBackingStorePixelRatio","backingStorePixelRatio","setTransform","putImageData","brightnessRange","opacityRange","initialColorDiv","newColorDiv","colorPickerDiv","opacityDiv","brightnessDiv","arrowDiv","_setOpacity","_setBrightness","brightnessLabel","opacityLabel","cancelButton","applyButton","_apply","saveButton","_save","loadButton","_loadLast","drag","pinch","enable","onTouch","_moveSelector","sat","sfac","fillRect","getImageData","centerY","centerX","angle","atan2","newTop","newLeft","propagating","events","propagatedHandler","_handled","stopped","stopPropagation","srcStop","firstTarget","_firstTarget","elemHammer","_handlers","Manager","PropagatingHammer","pointerType","isFirst","handler","eventType","hammers","idx","__WEBPACK_AMD_DEFINE_RESULT__","exportName","setTimeoutContext","bindFn","invokeArrayArg","each","message","deprecationMessage","inherit","child","childP","baseP","_super","boolOrFn","TYPE_FUNCTION","ifUndefined","val1","val2","addEventListeners","splitStr","removeEventListeners","inStr","str","inArray","src","findByKey","uniqueArray","results","prefixed","camelProp","VENDOR_PREFIXES","uniqueId","_uniqueId","getWindowForElement","doc","ownerDocument","defaultView","parentWindow","Input","manager","inputTarget","domHandler","ev","init","createInputInstance","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","getAngle","getDistance","computeDeltaXY","offsetDirection","getDirection","deltaX","deltaY","overallVelocity","getVelocity","overallVelocityX","overallVelocityY","rotation","getRotation","maxPointers","computeIntervalInputData","offsetDelta","prevDelta","velocity","velocityX","velocityY","last","lastInterval","COMPUTE_INTERVAL","DIRECTION_NONE","DIRECTION_LEFT","DIRECTION_RIGHT","DIRECTION_UP","DIRECTION_DOWN","PROPS_XY","PROPS_CLIENT_XY","evEl","MOUSE_ELEMENT_EVENTS","evWin","MOUSE_WINDOW_EVENTS","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","primaryTouch","lastTouches","recordTouches","eventData","setLastTouch","lastTouch","lts","removeLastTouch","DEDUP_TIMEOUT","isSyntheticEvent","DEDUP_DISTANCE","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","oldCssProps","touchAction","toggleCssProps","recognizeWith","requireFailure","cssProps","triggerDomEvent","gestureEvent","createEvent","initEvent","gesture","dispatchEvent","TEST_ELEMENT","nextKey","dest","MOBILE_REGEX","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","PointerEvent","removePointer","eventTypeNormalized","isTouch","storeIndex","pointerId","SINGLE_TOUCH_INPUT_MAP","touchstart","touchmove","touchend","touchcancel","TOUCH_INPUT_MAP","inputEvent","inputData","isMouse","sourceCapabilities","firesTouchEvents","PREFIXED_TOUCH_ACTION","NATIVE_TOUCH_ACTION","TOUCH_ACTION_MAP","touchMap","cssSupports","CSS","supports","compute","getTouchAction","preventDefaults","prevented","hasNone","isTapPointer","isTapMovement","isTapTouchTime","preventSrc","STATE_RECOGNIZED","dropRecognizeWith","dropRequireFailure","hasRequireFailures","canRecognizeWith","additionalEvent","tryEmit","canEmit","inputDataClone","reset","process","attrTest","optionPointers","isRecognized","directionTest","hasMoved","inOut","validPointers","validMovement","validTime","taps","posThreshold","validTouchTime","failTimeout","validInterval","validMultiTap","tapCount","VERSION","domEvents","userSelect","touchSelect","touchCallout","contentZooming","userDrag","tapHighlightColor","force","curRecognizer","existing","STATE_FAILED","Tap","Pan","Swipe","Pinch","Rotate","Press","onRelease","offTouch","offRelease","disablePreventDefaultVertically","pinchRecognizer","errorFound","Validator","referenceOptions","subObject","usedOptions","check","__any__","getSuggestion","__type__","checkFields","referenceOption","refOptionObj","optionType","refOptionType","print","printLocation","localSearch","findInOptions","globalSearch","indexMatch","closestMatch","recursive","closestMatchPath","lowerCaseOption","op","levenshteinDistance","_j","_j2","matrix","deltaDifference","scaleOffset","startToFront","endToFront","moveable","zoomable","zoomMin","zoomMax","animationTimer","_onDragStart","_onDrag","_onDragEnd","_onMouseWheel","_onTouch","_onPinch","validateDirection","getPointer","elementRect","byUser","finalStart","finalEnd","_cancelAnimation","initStart","initEnd","easingName","easingFunction","initTime","anyChanged","dragging","ease","done","_applyRange","updateHiddenDates","_changed","newStart","newEnd","getRange","conversion","totalHidden","previousDelta","_isInsideRange","allowDragging","getHiddenDurationBetween","diffRange","safeStart","snapAwayFromHidden","safeEnd","startDate","endDate","zoomKey","pointerDate","_pointerToDate","zoom","centerDate","hiddenDuration","hiddenDurationBefore","getHiddenDurationBefore","hiddenDurationAfter","move","_isResized","propsWidth","propsHeight","resized","_previousWidth","_previousHeight","convertHiddenOptions","repeat","dateItem","totalRange","pixelTime","runUntil","dayOffset","removeDuplicates","startHidden","isHidden","endHidden","rangeStart","rangeEnd","hidden","safeDates","printDates","stepOverHiddenDates","timeStep","previousTime","stepInHidden","currentValue","current","switchedYear","switchedMonth","switchedDay","correctTimeForHidden","totalDuration","partialDuration","accumulatedHiddenDuration","getAccumulatedHiddenDuration","timeOffset","requiredDuration","previousPoint","correctionEnabled","Activator","onMouseWheel","isActive","scrollTop","adjusted","_setScrollTop","backgroundVertical","backgroundHorizontal","leftContainer","rootClass","initialDrawDone","_redrawTimer","rightContainer","scrollTopMin","borderRootHeight","borderRootWidth","customTimes","redrawCount","drawPoints","onRender","clickToUse","activator","_initAutoResize","component","configurator","configure","appliedOptions","setModuleOptions","_origRedraw","active","_stopAutoResize","domRoot","setCustomTime","getCustomTime","setCustomTimeTitle","title","setCustomTitle","addCustomTime","timestamp","removeCustomTime","getVisibleItems","getWindow","centerContainerClientHeight","borderProps","autoHeight","setProperty","centerWidth","origin","backgroundHeight","centerContainerHeight","_updateScrollTop","contentsOverflow","reduceRedraw","repaint","setCurrentTime","getCurrentTime","_startAutoResize","_onResize","meDom","meDomRoot","rootOffsetHeight","rootOffsetWidth","meProps","lastWidth","lastHeight","eventOnDrawn","_me$dom$root","watchTimer","setInterval","initialScrollTop","oldScrollTop","_getScrollTop","lines","majorTexts","minorTexts","minimumStep","lineTop","showMinorLabels","showMinorLines","showMajorLabels","maxMinorChars","FORMAT","gap","itemsFit","parentChanged","_calculateCharSize","minorLabelHeight","minorCharHeight","majorLabelHeight","majorCharHeight","minorLineHeight","minorLineWidth","majorLineHeight","majorLineWidth","foregroundNextSibling","nextSibling","backgroundNextSibling","_repaintLabels","totalizersToAdd","totalizer","periods","diffInHours","rangeColumnCount","setMoment","setFormat","setScale","xNext","isMajor","widthDefault","elementHeaderWidth","querySelector","elementHeaderWidthItem","querySelectorAll","getClassName","getLabelMinor","_repaintMajorLine","_repaintMinorLine","pop","_setXY","_repaintMinorText","createTextNode","childNodes","nodeValue","_repaintMajorText","indexColumn","thisDom","measureCharMinor","minorCharWidth","measureCharMajor","majorCharWidth","autoScale","minorLabels","majorLabels","setMinimumStep","roundToMinor","hasNext","setAutoScale","stepYear","stepMonth","stepDay","stepHour","stepMinute","stepSecond","stepMillisecond","getLabelMajor","even","today","_moment","currentMonth","overlay","_onTapOverlay","onClick","_hasParent","deactivate","escListener","activate","unbind","__WEBPACK_AMD_DEFINE_FACTORY__","__WEBPACK_AMD_DEFINE_ARRAY__","_exportFunctions","_bound","keydown","keyup","_keys","fromCharCode","down","handleEvent","up","keyCode","bound","shiftKey","bindAll","getKey","newBindings","eventParams","hide","warned","substring","showCurrentTime","currentTimeTimer","align","groupOrderSwap","fromGroup","toGroup","targetOrder","groupOrder","selectable","multiselect","itemsAlwaysDraggable","editable","updateTime","updateGroup","groupEditable","onAdd","onUpdate","onMove","onRemove","onMoving","onAddGroup","onMoveGroup","onRemoveGroup","itemOptions","itemListeners","_onAdd","_onUpdate","_onRemove","groupListeners","_onAddGroups","_onUpdateGroups","_onRemoveGroups","groupIds","touchParams","groupTouchParams","UNGROUPED","BACKGROUND","box","_updateUngrouped","backgroundGroup","_onSelectItem","_onMultiSelectItem","_onAddItem","groupHammer","_onGroupDragStart","_onGroupDrag","_onGroupDragEnd","stackDirty","dirty","displayed","unselect","rawVisibleItems","isVisible","visibleItems","_deselect","widthContainerVIS","widthElement","_orderGroups","visibleInterval","zoomed","lastVisibleInterval","scrolled","lastRangeStart","forceRestack","firstGroup","_firstGroup","firstMargin","nonFirstMargin","groupMargin","groupResized","firstGroupIndex","firstGroupId","ungrouped","_getGroupId","getLabelSet","oldItemsData","getItems","_order","getGroups","removeItem","_getType","_removeItem","groupData","groupOptions","oldGroupId","oldSubGroupId","subgroup","oldGroup","_constructByEndArray","endArray","dragLeftItem","dragRightItem","itemProps","_getGroupIndex","initialX","dragLeft","_cloneItemData","dragRight","selectedItem","baseGroupIndex","itemsToDrag","groupIndex","groupOffset","ctrlKey","metaKey","_onDragStartAddItem","frameRect","newItem","domRootOffsetLeft","offsetLeft","updateGroupAllowed","newGroupBase","initial","initialStart","initialEnd","newOffset","_moveToGroup","originalOrder","movingUp","_targetGroup","draggedGroupHeight","targetGroupHeight","targetGroup","draggedGroup","newOrder","origOrder","draggedId","numGroups","curPos","orgOffset","slippedPosition","switchGroup","shouldBeGroup","switchGroupId","oldSelection","newSelection","xAbs","newItemData","itemGroup","lastSelectedGroup","multiselectPerGroup","_getItemRange","_item","foregroundRect","itemSetFromTarget","subgroups","subgroupIndex","subgroupOrderer","subgroupOrder","byStart","byEnd","checkRangedItems","mouseoverCallback","mouseoutCallback","inner","marker","visibility","Element","getLabelWidth","restack","boxDom","_calculateSubGroupHeights","customOrderedItems","_updateVisibleItems","nostack","_calculateHeight","repositionY","resetSubgroups","rowHeights","setParent","orderSubgroups","_checkIfVisible","sortArray","sortField","removeFromDataSet","startArray","orderByStart","orderByEnd","oldVisibleItems","visibleItemsLookup","_checkIfVisibleWithReference","_traceVisible","initialPos","breakCondition","visibleItemsLookupItem","_visibleItemsLookupItem","iMax","collidingItem","jj","collision","_updateContents","_updateTitle","_updateDataAttributes","_updateStyle","_repaintDeleteButton","domBoxStyleLeft","domLineStyleLeft","domDotStyleLeft","itemSetHeight","deleteButton","template","_contentToString","removeAttribute","dataAttributes","attributes","outerHTML","marginLeft","baseClassName","ieComplexTooltip","debounceTimeOutId","mouseOver","_repaintDragLeft","_repaintDragRight","limitSize","contentLeft","_dateElement","_dateElementEnd","indexEnd","_currentDateItem","__time","classList","dataIdItemSplit","dataIdItemSplit_1","calcPositionStart","calcPositionEnd","dateStart","dateElement","timeDiffElement","diffHoursElement","_calcPositionStart","dateElementEnd","timeDiffElementBackground","parentWidth","parentWidthPer2","boxWidth","_top","parentHeight","getComputedStyle","onTop","itemSubgroup","totalHeight","newHeight","boolean","function","any","null","groupsDraggable","linegraph","initialLoad","getLegend","isGroupVisible","yAxisLeftFrame","yAxisLeft","frameDom","yAxisRight","legendLeft","legendRight","screenToValue","yAxisOrientation","defaultGroup","sampling","graphHeight","shaded","barChart","sideBySide","interpolation","parametrization","dataAxis","legend","abortedGraphUpdate","updateSVGheight","updateSVGheightOnResize","forceGraphUpdate","lastStart","svgElements","groupsUsingDefaultStyles","framework","svg","Bars","Lines","Points","_removeGroup","_updateAllGroupData","removeGroup","_updateGroup","addGroup","_generateGroupContents","groupsContent","groupCounts","_groupId","extended","orginalY","styleLine","stylePoint","referenceLine","dateRecord","_groupId2","_insertYAxisLeft","isEmpty","reduce","_updateGraph","_getSortedGroupIds","grouplist","zIndex","bz","groupRanges","minDate","maxDate","_getRelevantData","_applySampling","_convertXcoordinates","_getYRanges","_updateYAxis","below","excludeFromStacking","_stack","_convertYcoordinates","calcPath","subGroupId","drawShading","subData","subPrevPoint","subNextPoint","dateComparator","first","dataContainer","increment","amountOfPoints","xDistance","pointsPerPixel","sampledData","combinedDataLeft","combinedDataRight","getYRange","getStackedYRange","yAxisLeftUsed","yAxisRightUsed","minLeft","minRight","maxLeft","maxRight","minVal","maxVal","_i2","ignore","_getAxisLeft","groupName","_toggleAxisVisiblity","drawIcons","master","masterAxis","lastYAxisLeft","lineOffset","tempGroups","_i3","axisUsed","datapoints","_this6","dataRegion","widthTimeline","totalizers","filteredTotalizers","columnWidth","dataPointItem","screen_x","_calculateGapPositionVIS","xToPercent","screen_y","endGap","startGap","fator","percntOverIndex","svgHeight","convertValue","setZeroPosition","groupSummary","axisArguments","Bargraph","drawIcon","iconWidth","iconHeight","fillHeight","outline","barWidth","originalWidth","bar1Height","bar2Height","processedGroupData","coreDistance","drawData","combinedData","intersections","barPoints","_getDataIntersections","minWidth","heightOffset","_getSafeDrawData","amount","resolved","zeroPosition","accumulatedNegative","accumulatedPositive","pointData","groupLabel","_getStackedYRange","xpos","getGroupTemplate","callbackResult","itemTrend","getCallback","maxValue","avgValue","minValue","withTrend","linegraphOptions","dataRegionTimeline","summaryWidth","dataRegionDatagrid","icons","majorLinesOffset","minorLinesOffset","labelOffsetX","labelOffsetY","alignZeros","linegraphSVG","DOMelements","labels","conversionFactor","stepPixels","zeroCrossing","amountOfSteps","iconsRemoved","amountOfGroups","lineContainer","graphOptions","_redrawGroupIcons","iconOffset","groupArray","_cleanupIcons","activeGroups","groupingAxisID","styleParam","styleAxis","backgroundHorizontalOffsetWidth","_redrawLabels","_redrawTitle","customRange","autoScaleEnd","autoScaleStart","followScale","maxLabelSize","getLines","major","_redrawLabel","_redrawLine","verifyResize","titleWidth","titleCharHeight","characterHeight","largestWidth","withThis","textMinor","textMajor","zeroAlign","formattingFunction","majorSteps","minorSteps","customLines","minorStepIdx","magnitudefactor","determineScale","rounded","setCharHeight","setHeight","minimumStepValue","orderOfMagnitude","solutionFound","is_major","getFirstMajor","majorStep","formatValue","bottomOffset","oldStepIdx","oldStart","oldEnd","increaseMagnitude","decreaseMagnitude","otherZero","otherStep","newRange","myOriginalZero","majorOffset","zeroOffset","pixels","usingDefaultStyle","summary","icon","Line","_catmullRom","_linear","fillPath","pathArray","subPathArray","dFill","zero","serializePath","inverse","_catmullRomUniform","p0","bp1","bp2","d1","d2","d3","A","N","d3powA","d2powA","d3pow2A","d2pow2A","d1pow2A","d1powA","side","iconSize","iconSpacing","excludeFromLegend","textArea","scrollableHeight","drawLegendIcons","paddingTop","_possibleConstructorReturn","ReferenceError","_inherits","subClass","superClass","setPrototypeOf","__proto__","DrawBackground","_DataAxis","getPrototypeOf","backgrounds","dataAxisClassName","drawLabels","drawLines","drawBackground","summaryGroupBackGround","keyBg","previousY","rowHeightId","renderBackground","summaryLine","_group","_previousY","ySummary","grupoSummary","rowHeightSummary","renderLabel","renderLine","yToPercent","_toConsumableArray","redrawLabel","labelClass","_renderArrowAvgLabel","_renderLineLabel","_getGroupScaleValues2","_getGroupScaleValues","intervalScale","_renderLabelWithScale","_getSupportLabels2","_getSupportLabels","topLabelY","middleLabelY","bottomLabelY","_getGroupScaleValues3","axisCustomLabel","_renderCustomLabel","_getSupportLabels3","fontSize","internHeight","amountLabelsToFit","amountLabels","referenceLineY","scaleDistance","intervalHeight","avgLabel","isInteger","groupAvgValue","firstItem","lastItem","lastItemLabel","alternativeLabel","firstItemLabel","reverse","redrawLine","heightSummary","lineClass","_renderArrowAvgLine","_renderDefaultLine","lineClassAvgType","lineClassMaxValue","lineClassAverage","lineClassMinValue","_getSupportLines2","_getSupportLines","topLineY","middleLineY","bottomLineY","_getSupportLines3","_drawBackgroundDiv","_require","_Core","onDrawn","visPropertiesMetadata","offsetX","pointToRow","offsetY","row","maxY","InfusionRate","_LineGraph","changeCalled","_ret","actualY","maxIndexGroup","objectArray","accumulator","maxIndex","callbackFunction","visEventName","groupsDataFunction","_maxIndex","dataLineUp","dataLineDown","dataLineMiddle","pointUp","pointDown","pointMiddle","normalizedPathSegList","_list","linePathUp","linePathDown","linePathMiddle","drawBolus","_convertAvgYcoordinates","_convertPointsYcoordinates","baseScreenY","_calculateRange","convertedValue","_invertScale","baseGraphHeight","dataPonintI","difference","diffPercent","proportionalSize","_maxValue","_minValue","graphScale","availableGraphHeight","middleValueInGraphScale","middleValueInScreenPosition","arrowAvgSizeScale","arrowAvgSize","_updateGroups","_calculateHeights","listOfYLabels","listOfValues","_calculateRangeAvg","_calculateRangePoints","includes","listOfMaxValues","listOfMinValues","DOMUtil","infusionRateGroupData","groupElement","subGroups","createSubGroups","sortBasedOnTimeForSubGroup","yElementArray","sortDataAndDefineOpacity","yMaximum","yMinimum","subGroup","createSVGElement","bolusElement","createBolusElement","rectElement","mainColorPostion","search","mainColor","subGroupsToSort","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","subGroupIndex","sortedArray","return","ySetElements","Set","groupItem","extraLineWidth","linesOffsetY","linesOffsetX","fontFamily","nodes","nodeIndices","edges","edgeIndices","eventListeners","onTap","onDoubleTap","onHold","onDragStart","onDrag","onDragEnd","onPinch","onMouseMove","onContext","functions","createNode","createEdge","view","bindEventListeners","images","_Images2","_Groups2","_Canvas2","selectionHandler","_SelectionHandler2","interactionHandler","_InteractionHandler2","_View2","renderer","_CanvasRenderer2","_PhysicsEngine2","layoutEngine","_LayoutEngine2","clustering","_Clustering2","manipulation","_ManipulationSystem2","nodesHandler","_NodesHandler2","edgesHandler","_EdgesHandler2","_KamadaKawai2","_Images","_Groups","_NodesHandler","_EdgesHandler","_PhysicsEngine","_Clustering","_CanvasRenderer","_Canvas","_View","_InteractionHandler","_SelectionHandler","_LayoutEngine","_ManipulationSystem","_KamadaKawai","layout","interaction","networkOptions","_updateVisibleIndices","nodeId","edgeId","initPhysicsData","_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","moveNode","getBoundingBox","getConnectedNodes","objectId","getConnectedEdges","startSimulation","stopSimulation","stabilize","getSelectedNodes","getSelectedEdges","getNodeAt","getEdgeAt","edge","selectNodes","selectEdges","getViewPosition","releaseNode","getOptionsFromConfigurator","_CachedImage","_CachedImage2","imageBroken","url","brokenUrl","imageToLoadBrokenUrlOn","onerror","image","imageToRedrawWith","cachedImage","img","onload","_fixImageCoordinates","_redrawWithImage","_tryloadBrokenUrl","imageToCache","CachedImage","NUM_ITERATIONS","Image","coordinates","_fillMipMap","drawImage","iterations","_to","_isImageOk","complete","naturalWidth","Groups","defaultIndex","groupsArray","defaultGroups","useDefaultGroups","optionFields","groupname","_index","_Node","_Node2","_Label","_Label2","NodesHandler","nodesListeners","borderWidthSelected","brokenImage","fixed","face","strokeColor","labelHighlightBold","level","mass","scaling","maxVisible","drawThreshold","customScalingFunction","shadow","shape","shapeProperties","borderDashes","useImageSize","useBorderWithImage","parseOptions","updateShape","updateLabelModule","_reset","_nodeId2","doNotEmit","oldNodesData","newNodes","positionInitially","changedData","dataChanged","clearPositions","dataArray","_node","_node2","boundingBox","nodeList","nodeObj","toId","fromId","edgeList","_Box","_Box2","_Circle","_Circle2","_CircularImage","_CircularImage2","_Database","_Database2","_Diamond","_Diamond2","_Dot","_Dot2","_Ellipse","_Ellipse2","_Icon","_Icon2","_Image","_Image2","_Square","_Square2","_Star","_Star2","_Text","_Text2","_Triangle","_Triangle2","_TriangleDown","_TriangleDown2","Node","imagelist","_x","_y","baseFontSize","predefinedPosition","labelModule","sendPhysicsUpdates","newX","newFixed","physOpts","newY","currentShape","groupObj","imageObj","load","distanceToBorder","sizeDiff","fontDiff","updateBoundingBox","resize","parentOptions","newOptions","changedPhysicsOptions","parsedColor","_slicedToArray","sliceIterator","_arr","_n","_e","_s","Label","edgelabel","pointToSelf","fontOptions","yLine","isEdgeLabel","nodeOptions","labelDirty","baseline","viewFontSize","calculateLabelSize","_drawBackground","_drawText","_getColor2","_getColor","_getColor3","fontColor","_setAlignment2","_setAlignment","_setAlignment3","lineCount","strokeText","_processLabel","measureText","newOptionsArray","_NodeBase2","_NodeBase3","Box","_NodeBase","textSize","getTextSize","selectionLineWidth","roundRect","enableShadow","disableShadow","save","enableBorderDashes","disableBorderDashes","restore","NodeBase","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY","setLineDash","dashes","_CircleImageBase2","_CircleImageBase3","Circle","_CircleImageBase","diameter","_drawRawCircle","CircleImageBase","labelOffset","imageLoaded","ratio","neutralborderWidth","globalAlpha","drawImageAtPosition","labelDimensions","CircularImage","_swapToImageResizeWhenImageLoaded","_resizeImage","clip","_drawImageAtPosition","_drawImageLabel","Database","database","_distanceToBorder","_ShapeBase2","_ShapeBase3","Diamond","_ShapeBase","_resizeShape","_drawShape","ShapeBase","sizeMultiplier","Dot","Ellipse","ellipse","Icon","_icon","Square","Star","Text","Triangle","TriangleDown","_Edge","_Edge2","EdgesHandler","edgesListeners","arrows","scaleFactor","arrowStrikethrough","hoverWidth","selectionWidth","selfReferenceSize","smooth","forceDirection","roundness","emitChange","edgeData","edgeOptions","reconnectEdges","markAllEdgesAsDirty","updateEdgeType","_edgeId","oldEdgesData","edgesData","oldEdge","disconnect","showInternalIds","connect","cleanup","edgeType","colorDirty","_CubicBezierEdge","_CubicBezierEdge2","_BezierEdgeDynamic","_BezierEdgeDynamic2","_BezierEdgeStatic","_BezierEdgeStatic2","_StraightEdge","_StraightEdge2","Edge","baseWidth","connected","_setInteractionWidths","changeInType","previousConnected","attachEdge","detachEdge","widthDiff","viaNode","getViaNode","arrowData","fromPoint","toPoint","getArrowData","core","drawLine","drawArrows","drawLabel","drawArrowHead","node1","node2","getPoint","translate","_rotateForLabelAlignment","_pointOnCircle","xFrom","yFrom","xTo","yTo","xObj","yObj","getDistanceToEdge","angleInDegrees","rotate","percentage","colorsDefined","_CubicBezierEdgeBase2","_CubicBezierEdgeBase3","CubicBezierEdge","_CubicBezierEdgeBase","viaNodes","via1","via2","bezierCurveTo","_getViaCoordinates","nearNode","_findBorderPositionBezier","x3","y3","_getDistanceToBezierEdge","_ref3","_ref4","vec","_BezierEdgeBase2","_BezierEdgeBase3","CubicBezierEdgeBase","_BezierEdgeBase","minDistance","lastX","lastY","_getDistanceToLine","_EdgeBase2","_EdgeBase3","BezierEdgeBase","_EdgeBase","distanceToPoint","via","EdgeBase","getColor","getLineWidth","_drawDashedLine","_drawLine","_line","_getCircleData2","_getCircleData","_getCircleData3","_circle","pattern","lineDashOffset","_getCircleData4","_getCircleData5","dashedLine","_getCircleData6","_getCircleData7","_radius","_findBorderPosition","_findBorderPositionCircle","_getCircleData8","_getCircleData9","colorOptions","grd","createLinearGradient","fromColor","toColor","addColorStop","_getDistanceToEdge","_getCircleData10","_getCircleData11","px","py","something","arrowPoint","guideOffset","findBorderPosition","guidePos","_getCircleData12","_getCircleData13","arrow","BezierEdgeDynamic","_boundFunction","positionBezierNode","physicsChange","setupSupportNode","parentEdgeId","quadraticCurveTo","BezierEdgeStatic","xVia","yVia","pi","originalAngle","myAngle","_pi","_originalAngle","_myAngle","StraightEdge","edgeSegmentLength","toBorderDist","toBorderPoint","borderPos","_PhysicsBase2","_PhysicsBase3","_PhysicsWorkerWrapper","_PhysicsWorkerWrapper2","PhysicsEngine","_PhysicsBase","physicsEnabled","simulationInterval","requiresTimeout","freezeCache","renderTimer","ready","useWorker","barnesHut","theta","gravitationalConstant","centralGravity","springLength","springConstant","damping","avoidOverlap","forceAtlas2Based","repulsion","nodeDistance","hierarchicalRepulsion","maxVelocity","minVelocity","stabilization","updateInterval","onlyDynamicEdges","timestep","adaptiveTimestep","layoutFailed","draggingNodes","positionUpdateHandler","physicsUpdateHandler","initPhysics","physicsWorker","terminate","initPhysicsWorker","postMessage","initEmbeddedPhysics","initPhysicsSolvers","parentScript","getElementById","lastIndexOf","scripts","getElementsByTagName","_src","physicsWorkerMessageHandler","positions","_physicsUpdateHandler","createPhysicsNode","createPhysicsEdge","nodeIds","edgeIds","stabilized","stabilizationIterations","_receivedPositions","_finalizeStabilization","setX","setY","_updateWorkerStabilized","viewFunction","simulationStep","_emitStabilized","startTime","physicsTick","runDoubleSpeed","amountOfIterations","startedStabilization","_sendWorkerStabilized","physicsEdge","physicsBody","forces","physicsNodeIndices","physicsEdgeIndices","physicsWorkerNodes","physicsWorkerEdges","velocities","previousStates","vx","vy","modelOptions","setFixed","targetIterations","_freezeNodes","_stabilizationBatch","_restoreFrozenNodes","_BarnesHutSolver","_BarnesHutSolver2","_RepulsionSolver","_RepulsionSolver2","_HierarchicalRepulsionSolver","_HierarchicalRepulsionSolver2","_SpringSolver","_SpringSolver2","_HierarchicalSpringSolver","_HierarchicalSpringSolver2","_CentralGravitySolver","_CentralGravitySolver2","_FA2BasedRepulsionSolver","_FA2BasedRepulsionSolver2","_FA2BasedCentralGravitySolver","_FA2BasedCentralGravitySolver2","PhysicsBase","referenceState","adaptiveTimestepEnabled","adaptiveCounter","adaptiveInterval","nodesSolver","edgesSolver","gravitySolver","calculateForces","moveNodes","revert","_evaluateStepQuality","isWorker","reference","maxNodeVelocity","averageNodeVelocity","nodeVelocity","_performStep","solve","BarnesHutSolver","barnesHutTree","randomSeed","thetaInversed","overlapAvoidanceFactor","nodeCount","_formBarnesHutTree","_getForceContribution","NW","NE","SW","SE","parentBranch","childrenCount","centerOfMass","calcSize","_calculateForces","gravityForce","fx","fy","minX","minY","maxX","rootSize","halfRootSize","maxWidth","_splitBranch","_placeInTree","totalMass","totalMassInv","biggestSize","skipMassUpdate","_updateBranchMass","_placeInRegion","region","seededRandom","containedNode","_insertRegion","childSize","_drawBranch","branch","RepulsionSolver","repulsingForce","HierarchicalRepulsionSolver","SpringSolver","edgeLength","node3","_calculateSpringForce","springForce","HierarchicalSpringSolver","springFx","springFy","totalFx","totalFy","correctionFx","correctionFy","_i4","_nodeId3","CentralGravitySolver","_BarnesHutSolver3","ForceAtlas2BasedRepulsionSolver","degree","_CentralGravitySolver3","ForceAtlas2BasedCentralGravitySolver","_PhysicsWorker","_PhysicsWorker2","handleMessage","PhysicsWorker","toRemove","processRemovals","sendTickResults","receivePositions","updateProperties","addElements","removeElements","debug","updatedNode","optionsNode","opts","_opts","replaceElements","newNode","_NetworkUtil","_NetworkUtil2","_Cluster","_Cluster2","ClusterEngine","clusteredNodes","clusteredEdges","hubsize","_getHubSize","_checkOptions","nodesToCluster","refreshData","joinCondition","childNodesObj","childEdgesObj","clonedOptions","cloneOptions","_cluster","edgeCount","clusters","usedNodes","relevantEdgeCount","gatheringSuccessful","childNodeId","_getConnectedId","clusterByEdgeCount","clusterNodeProperties","parentNodeId","parentClonedOptions","childClonedOptions","clusterEdgeProperties","childNode","otherNodeId","childKeys","createEdges","_edge","newEdge","clusteringEdgeReplacingId","_backupEdgeOptions","processProperties","childNodesOptions","childEdgesOptions","_clonedOptions","clusterId","_getClusterPosition","clusterNode","containedNodes","containedEdges","_createClusterEdges","originalOptions","clusterNodeId","releaseFunction","clusterPosition","newPositions","_containedNode","_nodeId4","_containedNode2","_nodeId5","_containedNode3","edgesToBeDeleted","otherCluster","transferEdge","replacedEdge","_restoreEdge","nodesArray","average","averageSquared","hubCounter","largestHub","variance","standardDeviation","hubThreshold","NetworkUtil","allNodes","specificNodes","amountOfConnections","_Node3","Cluster","requestAnimationFrame","mozRequestAnimationFrame","webkitRequestAnimationFrame","msRequestAnimationFrame","CanvasRenderer","redrawRequested","renderingActive","renderRequests","allowRedraw","hideEdgesOnDrag","hideNodesOnDrag","_determineBrowserMethod","_resizeNodes","_requestRedraw","_startRendering","cancelAnimationFrame","_renderStep","_drawEdges","_drawNodes","alwaysShow","topLeft","bottomRight","viewableArea","isSelected","isBoundingBoxOverlappingWith","browserType","Canvas","resizeTimer","resizeFunction","cameraState","hammerFrame","_cleanUp","previousWidth","previousHeight","widthRatio","heightRatio","newScale","currentViewCenter","distanceFromCenter","tabIndex","_prepareValue","emitEvent","oldWidth","oldHeight","previousRatio","_getCameraState","_setCameraState","_XconvertCanvasToDOM","_YconvertCanvasToDOM","_XconvertDOMtoCanvas","_YconvertDOMtoCanvas","View","animationSpeed","renderRefreshRate","animationEasingFunction","easingTime","sourceScale","targetScale","sourceTranslation","targetTranslation","lockedOnNodeId","lockedOnNodeOffset","touchTime","initialZoom","zoomLevel","positionDefined","yDistance","xZoomLevel","yZoomLevel","findCenter","animationOptions","nodePosition","lockedOnNode","animateView","locked","_transitionRedraw","viewCenter","_lockedRedraw","finished","_NavigationHandler","_NavigationHandler2","_Popup","_Popup2","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","nodesChanged","edgesChanged","nodeSelected","selectObject","selectionObj","xFixed","yFixed","scaleOld","preScaleDragPointer","scaleFrac","tx","ty","postScaleDragPointer","popupVisible","_checkHidePopup","setPosition","_checkShowPopup","hoverObject","pointerObj","previousPopupObjId","nodeUnderCursor","popupType","overlappingNodes","isOverlappingWith","getTitle","overlappingEdges","popupTargetType","popupTargetId","setText","_pointerToPositionObject","stillOnObj","overNode","NavigationHandler","iconsCreated","navigationHammers","boundFunctions","activated","configureKeyboardBindings","loadNavigationElements","cleanNavigation","navigationDOM","navigationDivs","navigationDivActions","_fit","bindToRedraw","_stopMovement","boundAction","unbindFromRedraw","Popup","doShow","SelectionHandler","hoverObj","selectConnectedEdges","hoverConnectedEdges","updateSelection","selectionChanged","deselectObject","emptySelection","DOM","highlightEdges","_selectConnectedEdges","_addToSelection","_removeFromSelection","canvasPos","returnNode","positionObject","_getAllNodesOverlappingWith","_getEdgesOverlappingWith","returnEdge","_getAllEdgesOverlappingWith","_unselectConnectedEdges","clusterSize","_addToHover","hoverChanged","blurObject","_hoverConnectedEdges","idArray","RangeError","LayoutEngine","initialRandomSeed","setPhysics","optionsBackup","improvedLayout","hierarchical","levelSeparation","nodeSpacing","treeSpacing","blockShifting","edgeMinimization","parentCentralization","sortMethod","setupHierarchicalLayout","layoutNetwork","prevHierarchicalState","adaptAllOptionsForHierarchicalLayout","clusterOptions","startLength","before","clusterBridges","_declusterAll","info","kamadaKawai","_shiftToCenter","getRangeCore","clustersPresent","definedLevel","undefinedLevel","hierarchicalLevels","lastNodeOnLevel","hierarchicalChildrenReference","hierarchicalParentReference","hierarchicalTrees","treeIndex","distributionOrdering","distributionIndex","distributionOrderingPresence","_determineLevelsByHubsize","_determineLevelsDirected","_determineLevelsCustomCallback","distribution","_getDistribution","_generateMap","_placeNodesByHierarchy","_condenseHierarchy","stillShifting","branches","shiftTree","_getPositionForHierarchy","_setPositionForHierarchy","getTreeSize","getTreeSizes","treeWidths","getBranchNodes","getBranchBoundary","branchMap","maxLevel","minSpace","maxSpace","branchNode","_getSpaceAroundNode2","_getSpaceAroundNode","_getSpaceAroundNode3","minSpaceNode","maxSpaceNode","getMaxLevel","_getMaxLevel","getCollisionLevel","maxLevel1","maxLevel2","hasSameParent","parents1","parents2","shiftElementsCloser","levels","centerParents","levelNodes","branchShiftCallback","centerParent","branchNodes1","branchNodes2","_getBranchBoundary","_getBranchBoundary2","max1","_getBranchBoundary3","_getBranchBoundary4","min2","minSpace2","_shiftBlock","_centerParent","minimizeEdgeLength","allEdges","nodeLevel","C2","referenceNodes","aboveEdges","otherNode","getFx","getDFx","getGuess","guess","guessMap","dfx","branchNodes","_getBranchBoundary5","_getBranchBoundary6","minSpaceBranch","maxSpaceBranch","branchOffset","_getSpaceAroundNode4","_getSpaceAroundNode5","newPosition","treeSizes","useMap","prevNode","nextNode","nextPos","parents","parentId","minPos","maxPos","_i5","_getSpaceAroundNode6","_getSpaceAroundNode7","positionedNodes","nodeArray","_indexArrayToNodes","_sortNodeArray","handledNodeCount","_validataPositionAndContinue","parentLevel","_i6","childNodeLevel","_i7","previousPos","sharedParent","_findCommonParent","withChild","_placeBranchNodes","hubSize","levelDownstream","nodeA","nodeB","_crawlNetwork","levelByDirection","_setMinLevelToZero","minLevel","fillInRelations","_this7","startingNodeId","crawler","tree","_this8","shifter","childA","childB","_this9","iterateParents","findParent","foundParent","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","fromSelect","toSelect","overlappingNodeIds","_performEditEdge","targetNode","connectionEdge","connectFromId","_performAddEdge","clickData","defaultData","sourceNodeId","targetNodeId","_FloydWarshall","_FloydWarshall2","KamadaKawai","edgeStrength","distanceSolver","edgesArray","ignoreClusters","D_matrix","getDistances","_createL_matrix","_createK_matrix","_createE_matrix","maxIterations","maxEnergy","highE_nodeId","dE_dx","dE_dy","delta_m","subIterations","_getHighestEnergyNode2","_getHighestEnergyNode","_getHighestEnergyNode3","_moveNode","_getEnergy2","_getEnergy","_getEnergy3","maxEnergyNodeId","dE_dx_max","dE_dy_max","nodeIdx","_getEnergy4","_getEnergy5","_E_sums$m","E_sums","d2E_dx2","d2E_dxdy","d2E_dy2","x_m","y_m","km","K_matrix","lm","L_matrix","iIdx","x_i","y_i","kmat","lmat","denominator","D","_updateE_matrix","E_matrix","mIdx","_mIdx","colm","kcolm","lcolm","cell","oldDx","oldDy","FloydWarshall","knode","inode","icolm","jnode","jcolm","CanvasRenderingContext2D","square","s2","ir","triangleDown","star","diamond","r2d","ox","oy","xe","ye","xm","ym","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","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","edit","del","back","addDescription","edgeDescription","editEdgeDescription","createEdgeError","deleteClusterError","editClusterError"],"mappings":"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","file":"vis"} \ No newline at end of file +{"version":3,"sources":["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","TimelineChart","timeline","Core","DateUtil","Range","stack","TimeStep","components","items","Item","BackgroundItem","BoxItem","PointItem","RangeItem","BackgroundGroup","Component","CurrentTime","CustomTime","DataAxis","DataScale","GraphGroup","Group","ItemSet","Legend","LineGraph","TimeAxis","DrawLabels","DrawLines","TimelineChartDataAxis","TimelineChartLineGraph","Network","network","Images","dotparser","gephiParser","allOptions","convertDot","input","DOTToGraph","convertGephi","options","parseGephi","moment","Hammer","keycharm","_typeof","Symbol","iterator","obj","constructor","prototype","uuid","isNumber","object","Number","recursiveDOMDelete","DOMobject","hasChildNodes","firstChild","removeChild","giveRange","min","max","total","value","scale","Math","isString","String","isDate","Date","ASPDateRegex","exec","isNaN","parse","randomUUID","v4","assignAllKeys","prop","hasOwnProperty","fillIfDefined","a","b","allowDeletion","arguments","length","undefined","protoExtend","i","other","extend","selectiveExtend","props","Array","isArray","Error","selectiveDeepExtend","TypeError","Object","deepExtend","selectiveNotDeepExtend","indexOf","push","equalArray","len","convert","type","match","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","throttle","fn","wait","timeout","needExecution","throttled","setTimeout","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","cssUtil","cssText","styles","style","trim","parts","keys","addCssText","currentStyles","newStyles","removeCssText","removeStyles","HSVToRGB","floor","f","q","t","test","isValidRGBA","rgba","selectiveBridgeObject","fields","referenceObject","objectTo","create","bridgeObject","insertSort","compare","k","j","mergeOptions","mergeTarget","globalOptions","enabled","binarySearchCustom","orderedItems","comparator","field","field2","iteration","low","high","middle","item","searchResult","binarySearchValue","sidePreference","prevValue","nextValue","easingFunctions","linear","easeInQuad","easeOutQuad","easeInOutQuad","easeInCubic","easeOutCubic","easeInOutCubic","easeInQuart","easeOutQuart","easeInOutQuart","easeInQuint","easeOutQuint","easeInOutQuint","require","global","hooks","hookCallback","apply","isObject","hasOwnProp","isObjectEmpty","getOwnPropertyNames","isUndefined","res","createUTC","format","locale","strict","createLocalOrUTC","utc","defaultParsingFlags","empty","unusedTokens","unusedInput","overflow","charsLeftOver","nullInput","invalidEra","invalidMonth","invalidFormat","userInvalidated","iso","parsedDateParts","era","meridiem","rfc2822","weekdayMismatch","getParsingFlags","_pf","isValid","_isValid","flags","parsedParts","some","isNowValid","_d","getTime","invalidWeekday","_strict","bigHour","isFrozen","createInvalid","NaN","copyConfig","to","from","val","_isAMomentObject","_i","_f","_l","_tzm","_isUTC","_offset","_locale","momentProperties","Moment","config","updateInProgress","updateOffset","warn","msg","suppressDeprecationWarnings","console","deprecate","firstTime","deprecationHandler","arg","args","deprecateSimple","name","deprecations","isFunction","Function","set","_config","_dayOfMonthOrdinalParseLenient","RegExp","_dayOfMonthOrdinalParse","source","_ordinalParse","mergeConfigs","parentConfig","childConfig","Locale","calendar","mom","now","output","_calendar","zeroFill","number","targetLength","forceSign","absNumber","abs","zerosToFill","pow","addFormatToken","token","padded","ordinal","func","formatTokenFunctions","localeData","removeFormattingTokens","makeFormatFunction","formattingTokens","formatMoment","expandFormat","formatFunctions","invalidDate","replaceLongDateFormatTokens","longDateFormat","localFormattingTokens","lastIndex","_longDateFormat","formatUpper","toUpperCase","tok","_invalidDate","_ordinal","relativeTime","withoutSuffix","string","isFuture","_relativeTime","pastFuture","diff","addUnitAlias","unit","shorthand","lowerCase","toLowerCase","aliases","normalizeUnits","units","normalizeObjectUnits","inputObject","normalizedProp","normalizedInput","addUnitPriority","priority","priorities","getPrioritizedUnits","unitsObj","u","sort","isLeapYear","year","absFloor","ceil","toInt","argumentForCoercion","coercedNumber","isFinite","makeGetSet","keepTime","set$1","get","month","date","daysInMonth","stringGet","stringSet","prioritized","addRegexToken","regex","strictRegex","regexes","isStrict","getParseRegexForToken","unescapeFormat","regexEscape","matched","p1","p2","p3","p4","addParseToken","tokens","addWeekParseToken","_w","addTimeToArrayFromToken","_a","mod","n","x","modMonth","localeMonths","_months","isFormat","MONTHS_IN_FORMAT","localeMonthsShort","_monthsShort","handleStrictParse","monthName","ii","llc","toLocaleLowerCase","_monthsParse","_longMonthsParse","_shortMonthsParse","monthsShort","months","localeMonthsParse","_monthsParseExact","setMonth","dayOfMonth","monthsParse","getSetMonth","getDaysInMonth","monthsShortRegex","computeMonthsParse","_monthsShortStrictRegex","_monthsShortRegex","defaultMonthsShortRegex","monthsRegex","_monthsStrictRegex","_monthsRegex","defaultMonthsRegex","cmpLenRev","shortPieces","longPieces","mixedPieces","daysInYear","getIsLeapYear","createDate","y","M","ms","getFullYear","setFullYear","createUTCDate","UTC","getUTCFullYear","setUTCFullYear","firstWeekOffset","dow","doy","fwd","getUTCDay","dayOfYearFromWeeks","week","weekday","resYear","resDayOfYear","localWeekday","weekOffset","dayOfYear","weekOfYear","resWeek","weeksInYear","weekOffsetNext","localeWeek","_week","localeFirstDayOfWeek","localeFirstDayOfYear","getSetWeek","add","getSetISOWeek","parseWeekday","weekdaysParse","parseIsoWeekday","shiftWeekdays","ws","concat","localeWeekdays","weekdays","_weekdays","day","localeWeekdaysShort","_weekdaysShort","localeWeekdaysMin","_weekdaysMin","handleStrictParse$1","weekdayName","_weekdaysParse","_shortWeekdaysParse","_minWeekdaysParse","weekdaysMin","weekdaysShort","localeWeekdaysParse","_weekdaysParseExact","_fullWeekdaysParse","getSetDayOfWeek","getDay","getSetLocaleDayOfWeek","getSetISODayOfWeek","weekdaysRegex","computeWeekdaysParse","_weekdaysStrictRegex","_weekdaysRegex","defaultWeekdaysRegex","weekdaysShortRegex","_weekdaysShortStrictRegex","_weekdaysShortRegex","defaultWeekdaysShortRegex","weekdaysMinRegex","_weekdaysMinStrictRegex","_weekdaysMinRegex","defaultWeekdaysMinRegex","minp","shortp","longp","minPieces","hFormat","hours","kFormat","lowercase","minutes","matchMeridiem","_meridiemParse","localeIsPM","charAt","localeMeridiem","isLower","commonPrefix","arr1","arr2","minl","normalizeLocale","chooseLocale","names","next","loadLocale","globalLocale","oldLocale","locales","_abbr","code","getSetGlobalLocale","values","data","getLocale","defineLocale","baseConfig","abbr","parentLocale","localeFamilies","updateLocale","tmpLocale","listLocales","checkOverflow","MONTH","DATE","YEAR","HOUR","MINUTE","SECOND","MILLISECOND","_overflowDayOfYear","_overflowWeeks","WEEK","_overflowWeekday","WEEKDAY","configFromISO","l","allowTime","dateFormat","timeFormat","tzFormat","extendedIsoRegex","basicIsoRegex","isoDates","isoTimes","tzRegex","configFromStringAndFormat","extractFromRFC2822Strings","yearStr","monthStr","dayStr","hourStr","minuteStr","secondStr","untruncateYear","defaultLocaleMonthsShort","preprocessRFC2822","checkWeekday","weekdayStr","parsedInput","defaultLocaleWeekdaysShort","calculateOffset","obsOffset","militaryOffset","numOffset","obsOffsets","hm","configFromRFC2822","parsedArray","setUTCMinutes","getUTCMinutes","configFromString","aspNetJsonRegex","createFromInputFallback","defaults","currentDateArray","nowValue","_useUTC","getUTCMonth","getUTCDate","getMonth","getDate","configFromArray","currentDate","expectedWeekday","yearToUse","dayOfYearFromWeekInfo","_dayOfYear","_nextDay","w","weekYear","temp","weekdayOverflow","curWeek","GG","W","E","createLocal","gg","ISO_8601","RFC_2822","skipped","stringLength","totalParsedInputLength","_meridiem","meridiemFixWrap","erasConvertYear","hour","isPm","meridiemHour","isPM","configFromStringAndArray","tempConfig","bestMoment","scoreToBeat","currentScore","validFormatFound","bestFormatIsValid","score","configFromObject","dayOrDate","minute","second","millisecond","createFromConfig","prepareConfig","preparse","configFromInput","isUTC","pickBy","moments","isDurationValid","unitHasDecimal","ordering","parseFloat","isValid$1","createInvalid$1","createDuration","Duration","duration","years","quarters","quarter","weeks","isoWeek","days","seconds","milliseconds","_milliseconds","_days","_data","_bubble","isDuration","absRound","round","compareArrays","array1","array2","dontConvert","lengthDiff","diffs","offset","separator","utcOffset","sign","offsetFromString","matcher","chunk","matches","chunkOffset","cloneWithOffset","model","clone","setTime","local","getDateOffset","getTimezoneOffset","getSetOffset","keepLocalTime","keepMinutes","localAdjust","matchShortOffset","_changeInProgress","addSubtract","getSetZone","setOffsetToUTC","setOffsetToLocal","subtract","setOffsetToParsedOffset","tZone","matchOffset","hasAlignedHourOffset","isDaylightSavingTime","isDaylightSavingTimeShifted","_isDSTShifted","isLocal","isUtcOffset","isUtc","ret","diffRes","aspNetRegex","isoRegex","parseIso","momentsDifference","inp","positiveMomentsDifference","base","isAfter","isBefore","createAdder","direction","period","dur","tmp","isAdding","isMomentInput","isNumberOrStringArray","isMomentInputObject","property","objectTest","propertyTest","properties","arrayTest","dataTypeTest","filter","isCalendarSpec","getCalendarFormat","myMoment","calendar$1","time","formats","sod","startOf","calendarFormat","localInput","endOf","isBetween","inclusivity","localFrom","localTo","isSame","inputMs","isSameOrAfter","isSameOrBefore","asFloat","that","zoneDelta","monthDiff","anchor2","adjust","wholeMonthDiff","anchor","keepOffset","inspect","prefix","datetime","suffix","zone","inputString","defaultFormatUtc","defaultFormat","postformat","humanize","fromNow","toNow","newLocaleData","mod$1","dividend","divisor","localStartOfDate","MS_PER_400_YEARS","utcStartOfDate","startOfDate","isoWeekday","MS_PER_MINUTE","MS_PER_HOUR","MS_PER_SECOND","unix","toObject","toJSON","isValid$2","parsingFlags","invalidAt","creationData","localeEras","eras","_eras","since","until","Infinity","localeErasParse","eraName","narrow","localeErasConvertYear","dir","getEraName","getEraNarrow","getEraAbbr","getEraYear","erasNameRegex","computeErasParse","_erasNameRegex","_erasRegex","erasAbbrRegex","_erasAbbrRegex","erasNarrowRegex","_erasNarrowRegex","matchEraAbbr","matchEraName","matchEraNarrow","matchEraYearOrdinal","_eraYearOrdinalRegex","matchUnsigned","abbrPieces","namePieces","narrowPieces","addWeekYearFormatToken","getter","getSetWeekYear","getSetWeekYearHelper","getSetISOWeekYear","getISOWeeksInYear","getISOWeeksInISOWeekYear","isoWeekYear","getWeeksInYear","weekInfo","getWeeksInWeekYear","weeksTarget","setWeekAll","dayOfYearData","getSetQuarter","getSetDayOfYear","parseMs","getZoneAbbr","getZoneName","createUnix","createInZone","parseZone","preParsePostFormat","get$1","setter","listMonthsImpl","out","listWeekdaysImpl","localeSorted","shift","listMonths","listMonthsShort","listWeekdays","listWeekdaysShort","listWeekdaysMin","mathAbs","addSubtract$1","add$1","subtract$1","absCeil","bubble","monthsFromDays","monthsToDays","daysToMonths","as","valueOf$1","makeAs","alias","clone$1","get$2","makeGetter","substituteTimeAgo","relativeTime$1","posNegDuration","thresholds","ss","getSetRelativeTimeRounding","roundingFunction","getSetRelativeTimeThreshold","threshold","limit","argWithSuffix","argThresholds","withSuffix","th","assign","toISOString$1","totalSign","ymSign","daysSign","hmsSign","abs$1","asSeconds","toFixed","fun","defaultCalendar","sameDay","nextDay","nextWeek","lastDay","lastWeek","sameElse","defaultLongDateFormat","LTS","LT","L","LL","LLL","LLLL","defaultDayOfMonthOrdinalParse","defaultRelativeTime","future","past","mm","hh","dd","ww","MM","yy","match1","match2","match3","match4","match6","match1to2","match3to4","match5to6","match1to3","match1to4","match1to6","matchSigned","matchTimestamp","matchWord","o","defaultLocaleMonths","parseTwoDigitYear","getSetYear","defaultLocaleWeek","defaultLocaleWeekdays","defaultLocaleWeekdaysMin","kInput","_isPm","pos","pos1","pos2","defaultLocaleMeridiemParse","getSetHour","dayOfMonthOrdinalParse","meridiemParse","UT","GMT","EDT","EST","CDT","CST","MDT","MST","PDT","PST","prototypeMin","prototypeMax","invalid","lang","erasParse","eraYearOrdinalParse","getSetDayOfMonth","getSetMinute","getSetSecond","getSetMillisecond","proto","for","eraNarrow","eraAbbr","eraYear","isoWeeks","weeksInWeekYear","isoWeeksInYear","isoWeeksInISOWeekYear","isDST","zoneAbbr","zoneName","dates","isDSTShifted","proto$1","firstDayOfYear","firstDayOfWeek","langData","asMilliseconds","asMinutes","asHours","asDays","asWeeks","asMonths","asQuarters","asYears","proto$2","toIsoString","version","relativeTimeRounding","relativeTimeThreshold","HTML5_FMT","DATETIME_LOCAL","DATETIME_LOCAL_SECONDS","DATETIME_LOCAL_MS","TIME","TIME_SECONDS","TIME_MS","webpackPolyfill","paths","children","webpackContext","req","resolve","buf","oct","_hexToByte","unparse","bth","_byteToHex","v1","clockseq","_clockseq","msecs","nsecs","_lastNSecs","dt","_lastMSecs","tl","tmh","node","_nodeId","rnds","random","rng","_rng","globalVar","crypto","getRandomValues","_rnds8","Uint8Array","_rnds","_seedBytes","extractStyleValue","styleKey","stylesStr","styleList","styleEntry","find","valueStart","getDirectionalArrowSize","baseSize","_Constants","ARROW","calculateSize","getArrowAvgMinHeight","baseHeight","height","CROSS","size","margin","adjustArrowAvgPositionToFitContainer","currentY","baseContainerY","containerHeight","arrowAvgMinSize","highestPossibleY","lowestPossibleY","getPartogramPoint","_ref","JSONcontainer","svgContainer","groupTemplate","group","getSVGElement","setAttribute","PARTOGRAM_HEAD_POSITION_DEGREE","partogramPosition","circle","append","lineCenter","setAttributeElement","y1","y2","lineLeft","x1","transform","lineRight","x2","line","_ref2","_ref2$x","_ref2$y","_ref2$x2","_ref2$y2","prepareElements","elementType","redundant","used","cleanupElements","resetElements","document","createElementNS","appendChild","getDOMElement","DOMContainer","insertBefore","createElement","drawPoint","labelObj","points","setAttributeNS","rect","_polygonUp","_polygonDown","baseY","_props$size","customStyles","baseArrowSize","directionArrow","crossHalfSize","strokeWidthUnconverted","strokeWidth","arrowAvgRequestedHeight","arrowAvgMinHeight","arrowAvgHeight","downLeftPt","downRightPt","downBottomPt","downLineToCenterPt","crossVerticalLine","crossHorizontalLine","upLeftPt","upRightPt","upTopPt","upLineToCenterPt","calculateAllPoints","y_min","screen_yMin","y_max","screen_yMax","y_avg","screen_yAvg","polygonDown","polygonCross","polygonUp","alertMin","stroke","alertColor","fill","alertMax","alertMed","rectangle","width","partogramPoint","partogramContraction","colorFill","sizeChart","_circle","path","label","xOffset","yOffset","content","textContent","point","tooltip","rowId","polygonType","getAttribute","attachEvents","ele","eve","drawBar","defineProperty","freeze","padding","right","BOLUS","radius","INFUSION_RATE","OP","OEA","OET","OEP","ODP","ODT","ODA","OS","IND","_options","_fieldId","fieldId","_type","_subscribers","setOptions","queue","_queue","destroy","on","subscribers","subscribe","off","unsubscribe","_trigger","params","senderId","subscriber","addedIds","me","_addItem","update","updatedIds","oldData","updatedData","addOrUpdate","oldItem","_updateItem","ids","firstType","returnType","itemIds","itemId","_getItem","order","_sort","_filterFields","resultant","getIds","getDataSet","mappedItems","filteredItem","itemFields","av","bv","remove","removedId","removedIds","_remove","clear","maxField","itemField","minField","distinct","fieldType","count","exists","types","raw","converted","JSON","stringify","delay","_timeout","_extended","_flushIfNeeded","flush","methods","original","method","context","entry","clearTimeout","_ids","_onEvent","setData","refresh","oldIds","newIds","added","removed","viewOptions","getArguments","defaultFilter","dataSet","updated","container","SyntaxError","containerElement","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","dotSizeRatio","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","bx","by","ex","ey","ez","dx","dy","dz","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","innerText","onmousedown","_onMouseDown","ontouchstart","_onTouchStart","onmousewheel","_onWheel","ontooltip","_onTooltip","onkeydown","setSize","_resizeCanvas","clientHeight","animationStart","slider","play","animationStop","stop","_resizeCenter","setCameraPosition","horizontal","vertical","distance","getCameraPosition","getArmRotation","_readData","_redrawFilter","animationAutoStart","cameraPosition","styleNumber","showAnimationControls","_redrawSlider","_redrawClear","_redrawAxis","_redrawDataGrid","_redrawDataLine","_redrawDataBar","_redrawDataDot","_redrawInfo","_redrawLegend","getContext","clearRect","widthMin","widthMax","dotSize","ctx","lineWidth","font","ymax","hue","_hsv2rgb","strokeStyle","beginPath","moveTo","lineTo","strokeRect","fillStyle","closePath","step","start","getCurrent","end","textAlign","textBaseline","fillText","innerHTML","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","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","snapValue","parameters","emit","boundingRect","mouseX","mouseY","tooltipTimeout","_hideTooltip","dataPoint","_dataPointFromXY","_showTooltip","ontouchmove","_onTouchMove","ontouchend","_onTouchEnd","delta","wheelDelta","detail","oldLength","newLength","_insideTriangle","triangle","bs","cs","closestDataPoint","closestDist","triangle1","triangle2","distX","distY","sqrt","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","step2","step5","toPrecision","getStep","_interopRequireDefault","__esModule","default","groups","forthArgument","defaultOptions","autoResize","throttleRedraw","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","groupNow","eventProperties","groupId","eventPropertiesOld","_","onmouseleave","fitDone","getItemRange","setWindow","animation","fit","setGroups","setItems","_redraw","_Configurator","_Configurator2","_Validator","_Validator2","printStyle","configureOptions","_createConfigurator","markDirty","refreshItems","validate","selection","getSelection","setSelection","newDataSet","focus","itemData","getDataRange","minItem","maxItem","getStart","getEnd","factor","show","repositionX","getWidthLeft","getWidthRight","lhs","rhs","dataset","centerContainerRect","centerContainer","itemFromTarget","groupFromTarget","customTime","customTimeFromTarget","snap","snappedTime","what","foreground","labelSet","pageX","srcEvent","pageY","setColumnCount","columnCount","merge","_classCallCheck","instance","Constructor","_createClass","defineProperties","descriptor","enumerable","configurable","writable","protoProps","staticProps","_ColorPicker","_ColorPicker2","Configurator","parentModule","defaultContainer","pixelRatio","changedOptions","allowCreation","initialized","popupCounter","showButton","moduleOptions","domElements","popupDiv","popupLimit","popupHistory","colorPicker","wrapper","_removePopup","_clean","_this","_handleObject","_makeItem","_makeHeader","generateButton","_printOptions","onmouseover","onmouseout","optionsContainer","_push","_showPopupIfNeeded","_len","_key","div","objectLabel","select","selectedValue","selected","_update","_makeLabel","err","popupString","popupValue","oninput","itemIndex","_setupPopup","_this2","html","hideTimeout","deleteTimeout","_this3","correspondingElement","checkbox","checked","_this4","defaultColor","_showColorPicker","_this5","insertTo","setColor","setUpdateCallback","colorString","setCloseCallback","checkOnly","visibleInSet","subObj","newPath","_getValue","_handleArray","_makeTextInput","_makeCheckbox","draw","physics","solver","enabledPath","enabledValue","_label","error","_makeColorField","_makeDropdown","_makeRange","_constructOptions","optionsObj","pointer","getOptions","hammerUtil","ColorPicker","generated","centerCoordinates","hueCircle","initialColor","previousColor","applied","updateCallback","closeCallback","hammer","_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","_rgbaArray","rgbObj","alpha","_setColor","display","_generateHueCircle","_hide","_updatePicker","alert","angleConvert","colorPickerSelector","colorPickerCanvas","pixelRation","devicePixelRatio","webkitBackingStorePixelRatio","mozBackingStorePixelRatio","msBackingStorePixelRatio","oBackingStorePixelRatio","backingStorePixelRatio","setTransform","putImageData","brightnessRange","opacityRange","initialColorDiv","newColorDiv","colorPickerDiv","opacityDiv","brightnessDiv","arrowDiv","_setOpacity","_setBrightness","brightnessLabel","opacityLabel","cancelButton","applyButton","_apply","saveButton","_save","loadButton","_loadLast","drag","pinch","enable","onTouch","_moveSelector","sat","sfac","fillRect","getImageData","centerY","centerX","angle","atan2","newTop","newLeft","propagating","events","propagatedHandler","_handled","stopped","stopPropagation","srcStop","firstTarget","_firstTarget","elemHammer","_handlers","Manager","PropagatingHammer","pointerType","isFirst","handler","eventType","hammers","idx","__WEBPACK_AMD_DEFINE_RESULT__","exportName","setTimeoutContext","bindFn","invokeArrayArg","each","message","deprecationMessage","inherit","child","childP","baseP","_super","boolOrFn","TYPE_FUNCTION","ifUndefined","val1","val2","addEventListeners","splitStr","removeEventListeners","inStr","str","inArray","src","findByKey","uniqueArray","results","prefixed","camelProp","VENDOR_PREFIXES","uniqueId","_uniqueId","getWindowForElement","doc","ownerDocument","defaultView","parentWindow","Input","manager","inputTarget","domHandler","ev","init","createInputInstance","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","getAngle","getDistance","computeDeltaXY","offsetDirection","getDirection","deltaX","deltaY","overallVelocity","getVelocity","overallVelocityX","overallVelocityY","rotation","getRotation","maxPointers","computeIntervalInputData","offsetDelta","prevDelta","velocity","velocityX","velocityY","last","lastInterval","COMPUTE_INTERVAL","DIRECTION_NONE","DIRECTION_LEFT","DIRECTION_RIGHT","DIRECTION_UP","DIRECTION_DOWN","PROPS_XY","PROPS_CLIENT_XY","evEl","MOUSE_ELEMENT_EVENTS","evWin","MOUSE_WINDOW_EVENTS","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","primaryTouch","lastTouches","recordTouches","eventData","setLastTouch","lastTouch","lts","removeLastTouch","DEDUP_TIMEOUT","isSyntheticEvent","DEDUP_DISTANCE","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","oldCssProps","touchAction","toggleCssProps","recognizeWith","requireFailure","cssProps","triggerDomEvent","gestureEvent","createEvent","initEvent","gesture","dispatchEvent","TEST_ELEMENT","nextKey","dest","MOBILE_REGEX","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","PointerEvent","removePointer","eventTypeNormalized","isTouch","storeIndex","pointerId","SINGLE_TOUCH_INPUT_MAP","touchstart","touchmove","touchend","touchcancel","TOUCH_INPUT_MAP","inputEvent","inputData","isMouse","sourceCapabilities","firesTouchEvents","PREFIXED_TOUCH_ACTION","NATIVE_TOUCH_ACTION","TOUCH_ACTION_MAP","touchMap","cssSupports","CSS","supports","compute","getTouchAction","preventDefaults","prevented","hasNone","isTapPointer","isTapMovement","isTapTouchTime","preventSrc","STATE_RECOGNIZED","dropRecognizeWith","dropRequireFailure","hasRequireFailures","canRecognizeWith","additionalEvent","tryEmit","canEmit","inputDataClone","reset","process","attrTest","optionPointers","isRecognized","directionTest","hasMoved","inOut","validPointers","validMovement","validTime","taps","posThreshold","validTouchTime","failTimeout","validInterval","validMultiTap","tapCount","VERSION","domEvents","userSelect","touchSelect","touchCallout","contentZooming","userDrag","tapHighlightColor","force","curRecognizer","existing","STATE_FAILED","Tap","Pan","Swipe","Pinch","Rotate","Press","onRelease","offTouch","offRelease","disablePreventDefaultVertically","pinchRecognizer","errorFound","Validator","referenceOptions","subObject","usedOptions","check","__any__","getSuggestion","__type__","checkFields","referenceOption","refOptionObj","optionType","refOptionType","print","printLocation","localSearch","findInOptions","globalSearch","indexMatch","closestMatch","recursive","closestMatchPath","lowerCaseOption","op","levenshteinDistance","_j","_j2","matrix","deltaDifference","scaleOffset","startToFront","endToFront","moveable","zoomable","zoomMin","zoomMax","animationTimer","_onDragStart","_onDrag","_onDragEnd","_onMouseWheel","_onTouch","_onPinch","validateDirection","getPointer","elementRect","byUser","finalStart","finalEnd","_cancelAnimation","initStart","initEnd","easingName","easingFunction","initTime","anyChanged","dragging","ease","done","_applyRange","updateHiddenDates","_changed","newStart","newEnd","getRange","conversion","totalHidden","previousDelta","_isInsideRange","allowDragging","getHiddenDurationBetween","diffRange","safeStart","snapAwayFromHidden","safeEnd","startDate","endDate","zoomKey","pointerDate","_pointerToDate","zoom","centerDate","hiddenDuration","hiddenDurationBefore","getHiddenDurationBefore","hiddenDurationAfter","move","_isResized","propsWidth","propsHeight","resized","_previousWidth","_previousHeight","convertHiddenOptions","repeat","dateItem","totalRange","pixelTime","runUntil","dayOffset","removeDuplicates","startHidden","isHidden","endHidden","rangeStart","rangeEnd","hidden","safeDates","printDates","stepOverHiddenDates","timeStep","previousTime","stepInHidden","currentValue","current","switchedYear","switchedMonth","switchedDay","correctTimeForHidden","totalDuration","partialDuration","accumulatedHiddenDuration","getAccumulatedHiddenDuration","timeOffset","requiredDuration","previousPoint","correctionEnabled","Activator","onMouseWheel","isActive","scrollTop","adjusted","_setScrollTop","backgroundVertical","backgroundHorizontal","leftContainer","rootClass","initialDrawDone","_redrawTimer","rightContainer","scrollTopMin","borderRootHeight","borderRootWidth","customTimes","redrawCount","drawPoints","onRender","clickToUse","activator","_initAutoResize","component","configurator","configure","appliedOptions","setModuleOptions","_origRedraw","active","_stopAutoResize","domRoot","setCustomTime","getCustomTime","setCustomTimeTitle","title","setCustomTitle","addCustomTime","timestamp","removeCustomTime","getVisibleItems","getWindow","centerContainerClientHeight","borderProps","autoHeight","setProperty","centerWidth","origin","backgroundHeight","centerContainerHeight","_updateScrollTop","contentsOverflow","reduceRedraw","repaint","setCurrentTime","getCurrentTime","_startAutoResize","_onResize","meDom","meDomRoot","rootOffsetHeight","rootOffsetWidth","meProps","lastWidth","lastHeight","eventOnDrawn","_me$dom$root","watchTimer","setInterval","initialScrollTop","oldScrollTop","_getScrollTop","lines","majorTexts","minorTexts","minimumStep","lineTop","showMinorLabels","showMinorLines","showMajorLabels","maxMinorChars","FORMAT","gap","itemsFit","parentChanged","_calculateCharSize","minorLabelHeight","minorCharHeight","majorLabelHeight","majorCharHeight","minorLineHeight","minorLineWidth","majorLineHeight","majorLineWidth","foregroundNextSibling","nextSibling","backgroundNextSibling","_repaintLabels","totalizersToAdd","totalizer","periods","diffInHours","rangeColumnCount","setMoment","setFormat","setScale","xNext","isMajor","widthDefault","elementHeaderWidth","querySelector","elementHeaderWidthItem","querySelectorAll","getClassName","getLabelMinor","_repaintMajorLine","_repaintMinorLine","pop","_setXY","_repaintMinorText","createTextNode","childNodes","nodeValue","_repaintMajorText","indexColumn","thisDom","measureCharMinor","minorCharWidth","measureCharMajor","majorCharWidth","autoScale","minorLabels","majorLabels","setMinimumStep","roundToMinor","hasNext","setAutoScale","stepYear","stepMonth","stepDay","stepHour","stepMinute","stepSecond","stepMillisecond","getLabelMajor","even","today","_moment","currentMonth","overlay","_onTapOverlay","onClick","_hasParent","deactivate","escListener","activate","unbind","__WEBPACK_AMD_DEFINE_FACTORY__","__WEBPACK_AMD_DEFINE_ARRAY__","_exportFunctions","_bound","keydown","keyup","_keys","fromCharCode","down","handleEvent","up","keyCode","bound","shiftKey","bindAll","getKey","newBindings","eventParams","hide","warned","substring","showCurrentTime","currentTimeTimer","align","groupOrderSwap","fromGroup","toGroup","targetOrder","groupOrder","selectable","multiselect","itemsAlwaysDraggable","editable","updateTime","updateGroup","groupEditable","onAdd","onUpdate","onMove","onRemove","onMoving","onAddGroup","onMoveGroup","onRemoveGroup","itemOptions","itemListeners","_onAdd","_onUpdate","_onRemove","groupListeners","_onAddGroups","_onUpdateGroups","_onRemoveGroups","groupIds","touchParams","groupTouchParams","UNGROUPED","BACKGROUND","box","_updateUngrouped","backgroundGroup","_onSelectItem","_onMultiSelectItem","_onAddItem","groupHammer","_onGroupDragStart","_onGroupDrag","_onGroupDragEnd","stackDirty","dirty","displayed","unselect","rawVisibleItems","isVisible","visibleItems","_deselect","widthContainerVIS","widthElement","_orderGroups","visibleInterval","zoomed","lastVisibleInterval","scrolled","lastRangeStart","forceRestack","firstGroup","_firstGroup","firstMargin","nonFirstMargin","groupMargin","groupResized","firstGroupIndex","firstGroupId","ungrouped","_getGroupId","getLabelSet","oldItemsData","getItems","_order","getGroups","removeItem","_getType","_removeItem","groupData","groupOptions","oldGroupId","oldSubGroupId","subgroup","oldGroup","_constructByEndArray","endArray","dragLeftItem","dragRightItem","itemProps","_getGroupIndex","initialX","dragLeft","_cloneItemData","dragRight","selectedItem","baseGroupIndex","itemsToDrag","groupIndex","groupOffset","ctrlKey","metaKey","_onDragStartAddItem","frameRect","newItem","domRootOffsetLeft","offsetLeft","updateGroupAllowed","newGroupBase","initial","initialStart","initialEnd","newOffset","_moveToGroup","originalOrder","movingUp","_targetGroup","draggedGroupHeight","targetGroupHeight","targetGroup","draggedGroup","newOrder","origOrder","draggedId","numGroups","curPos","orgOffset","slippedPosition","switchGroup","shouldBeGroup","switchGroupId","oldSelection","newSelection","xAbs","newItemData","itemGroup","lastSelectedGroup","multiselectPerGroup","_getItemRange","_item","foregroundRect","itemSetFromTarget","subgroups","subgroupIndex","subgroupOrderer","subgroupOrder","byStart","byEnd","checkRangedItems","mouseoverCallback","mouseoutCallback","inner","marker","visibility","Element","getLabelWidth","restack","boxDom","_calculateSubGroupHeights","customOrderedItems","_updateVisibleItems","nostack","_calculateHeight","repositionY","resetSubgroups","rowHeights","setParent","orderSubgroups","_checkIfVisible","sortArray","sortField","removeFromDataSet","startArray","orderByStart","orderByEnd","oldVisibleItems","visibleItemsLookup","_checkIfVisibleWithReference","_traceVisible","initialPos","breakCondition","visibleItemsLookupItem","_visibleItemsLookupItem","iMax","collidingItem","jj","collision","_updateContents","_updateTitle","_updateDataAttributes","_updateStyle","_repaintDeleteButton","domBoxStyleLeft","domLineStyleLeft","domDotStyleLeft","itemSetHeight","deleteButton","template","_contentToString","removeAttribute","dataAttributes","attributes","outerHTML","marginLeft","baseClassName","ieComplexTooltip","debounceTimeOutId","mouseOver","_repaintDragLeft","_repaintDragRight","limitSize","contentLeft","_dateElement","_dateElementEnd","indexEnd","_currentDateItem","__time","classList","dataIdItemSplit","dataIdItemSplit_1","calcPositionStart","calcPositionEnd","dateStart","dateElement","timeDiffElement","diffHoursElement","_calcPositionStart","dateElementEnd","timeDiffElementBackground","parentWidth","parentWidthPer2","boxWidth","_top","parentHeight","getComputedStyle","onTop","itemSubgroup","totalHeight","newHeight","boolean","function","any","null","groupsDraggable","linegraph","initialLoad","getLegend","isGroupVisible","yAxisLeftFrame","yAxisLeft","frameDom","yAxisRight","legendLeft","legendRight","screenToValue","yAxisOrientation","defaultGroup","sampling","graphHeight","shaded","barChart","sideBySide","interpolation","parametrization","dataAxis","legend","abortedGraphUpdate","updateSVGheight","updateSVGheightOnResize","forceGraphUpdate","lastStart","svgElements","groupsUsingDefaultStyles","framework","svg","Bars","Lines","Points","_removeGroup","_updateAllGroupData","removeGroup","_updateGroup","addGroup","_generateGroupContents","groupsContent","groupCounts","_groupId","extended","orginalY","styleLine","stylePoint","referenceLine","dateRecord","_groupId2","_insertYAxisLeft","isEmpty","reduce","_updateGraph","_getSortedGroupIds","grouplist","zIndex","bz","groupRanges","minDate","maxDate","_getRelevantData","_applySampling","_convertXcoordinates","_getYRanges","_updateYAxis","below","excludeFromStacking","_stack","_convertYcoordinates","calcPath","subGroupId","drawShading","subData","subPrevPoint","subNextPoint","dateComparator","first","dataContainer","increment","amountOfPoints","xDistance","pointsPerPixel","sampledData","combinedDataLeft","combinedDataRight","getYRange","getStackedYRange","yAxisLeftUsed","yAxisRightUsed","minLeft","minRight","maxLeft","maxRight","minVal","maxVal","_i2","ignore","_getAxisLeft","groupName","_toggleAxisVisiblity","drawIcons","master","masterAxis","lastYAxisLeft","lineOffset","tempGroups","_i3","axisUsed","datapoints","_this6","dataRegion","widthTimeline","totalizers","filteredTotalizers","columnWidth","dataPointItem","screen_x","_calculateGapPositionVIS","xToPercent","screen_y","endGap","startGap","fator","percntOverIndex","svgHeight","convertValue","setZeroPosition","groupSummary","axisArguments","Bargraph","drawIcon","iconWidth","iconHeight","fillHeight","outline","barWidth","originalWidth","bar1Height","bar2Height","processedGroupData","coreDistance","drawData","combinedData","intersections","barPoints","_getDataIntersections","minWidth","heightOffset","_getSafeDrawData","amount","resolved","zeroPosition","accumulatedNegative","accumulatedPositive","pointData","groupLabel","_getStackedYRange","xpos","getGroupTemplate","callbackResult","itemTrend","getCallback","maxValue","avgValue","minValue","withTrend","linegraphOptions","dataRegionTimeline","summaryWidth","dataRegionDatagrid","icons","majorLinesOffset","minorLinesOffset","labelOffsetX","labelOffsetY","alignZeros","linegraphSVG","DOMelements","labels","conversionFactor","stepPixels","zeroCrossing","amountOfSteps","iconsRemoved","amountOfGroups","lineContainer","graphOptions","_redrawGroupIcons","iconOffset","groupArray","_cleanupIcons","activeGroups","groupingAxisID","styleParam","styleAxis","backgroundHorizontalOffsetWidth","_redrawLabels","_redrawTitle","customRange","autoScaleEnd","autoScaleStart","followScale","maxLabelSize","getLines","major","_redrawLabel","_redrawLine","verifyResize","titleWidth","titleCharHeight","characterHeight","largestWidth","withThis","textMinor","textMajor","zeroAlign","formattingFunction","majorSteps","minorSteps","customLines","minorStepIdx","magnitudefactor","determineScale","rounded","setCharHeight","setHeight","minimumStepValue","orderOfMagnitude","solutionFound","is_major","getFirstMajor","majorStep","formatValue","bottomOffset","oldStepIdx","oldStart","oldEnd","increaseMagnitude","decreaseMagnitude","otherZero","otherStep","newRange","myOriginalZero","majorOffset","zeroOffset","pixels","usingDefaultStyle","summary","icon","Line","_catmullRom","_linear","fillPath","pathArray","subPathArray","dFill","zero","serializePath","inverse","_catmullRomUniform","p0","bp1","bp2","d1","d2","d3","A","N","d3powA","d2powA","d3pow2A","d2pow2A","d1pow2A","d1powA","side","iconSize","iconSpacing","excludeFromLegend","textArea","scrollableHeight","drawLegendIcons","paddingTop","_possibleConstructorReturn","ReferenceError","_inherits","subClass","superClass","setPrototypeOf","__proto__","DrawBackground","_DataAxis","getPrototypeOf","backgrounds","dataAxisClassName","drawLabels","drawLines","drawBackground","summaryGroupBackGround","keyBg","previousY","rowHeightId","renderBackground","summaryLine","_group","_previousY","ySummary","grupoSummary","rowHeightSummary","renderLabel","renderLine","yToPercent","_toConsumableArray","redrawLabel","labelClass","_renderArrowAvgLabel","_renderLineLabel","_getGroupScaleValues2","_getGroupScaleValues","intervalScale","_renderLabelWithScale","_getSupportLabels2","_getSupportLabels","topLabelY","middleLabelY","bottomLabelY","_getGroupScaleValues3","axisCustomLabel","_renderCustomLabel","_getSupportLabels3","fontSize","internHeight","amountLabelsToFit","amountLabels","referenceLineY","scaleDistance","intervalHeight","avgLabel","isInteger","groupAvgValue","firstItem","lastItem","lastItemLabel","alternativeLabel","firstItemLabel","reverse","redrawLine","heightSummary","lineClass","_renderArrowAvgLine","_renderDefaultLine","lineClassAvgType","lineClassMaxValue","lineClassAverage","lineClassMinValue","_getSupportLines2","_getSupportLines","topLineY","middleLineY","bottomLineY","_getSupportLines3","_drawBackgroundDiv","_require","_Core","onDrawn","visPropertiesMetadata","offsetX","pointToRow","offsetY","row","maxY","InfusionRate","_LineGraph","changeCalled","_ret","actualY","maxIndexGroup","objectArray","accumulator","maxIndex","callbackFunction","visEventName","groupsDataFunction","_maxIndex","dataLineUp","dataLineDown","dataLineMiddle","pointUp","pointDown","pointMiddle","normalizedPathSegList","_list","linePathUp","linePathDown","linePathMiddle","drawBolus","_convertAvgYcoordinates","_convertPointsYcoordinates","baseScreenY","_calculateRange","convertedValue","_invertScale","baseGraphHeight","dataPonintI","difference","diffPercent","proportionalSize","_maxValue","_minValue","graphScale","availableGraphHeight","middleValueInGraphScale","middleValueInScreenPosition","arrowAvgSizeScale","arrowAvgSize","_updateGroups","_calculateHeights","listOfYLabels","listOfValues","_calculateRangeAvg","_calculateRangePoints","includes","listOfMaxValues","listOfMinValues","DOMUtil","infusionRateGroupData","groupElement","subGroups","createSubGroups","sortBasedOnTimeForSubGroup","yElementArray","sortDataAndDefineOpacity","yMaximum","yMinimum","subGroup","createSVGElement","bolusElement","createBolusElement","rectElement","mainColorPostion","search","mainColor","subGroupsToSort","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","subGroupIndex","sortedArray","return","ySetElements","Set","groupItem","extraLineWidth","linesOffsetY","linesOffsetX","fontFamily","nodes","nodeIndices","edges","edgeIndices","eventListeners","onTap","onDoubleTap","onHold","onDragStart","onDrag","onDragEnd","onPinch","onMouseMove","onContext","functions","createNode","createEdge","view","bindEventListeners","images","_Images2","_Groups2","_Canvas2","selectionHandler","_SelectionHandler2","interactionHandler","_InteractionHandler2","_View2","renderer","_CanvasRenderer2","_PhysicsEngine2","layoutEngine","_LayoutEngine2","clustering","_Clustering2","manipulation","_ManipulationSystem2","nodesHandler","_NodesHandler2","edgesHandler","_EdgesHandler2","_KamadaKawai2","_Images","_Groups","_NodesHandler","_EdgesHandler","_PhysicsEngine","_Clustering","_CanvasRenderer","_Canvas","_View","_InteractionHandler","_SelectionHandler","_LayoutEngine","_ManipulationSystem","_KamadaKawai","layout","interaction","networkOptions","_updateVisibleIndices","nodeId","edgeId","initPhysicsData","_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","moveNode","getBoundingBox","getConnectedNodes","objectId","getConnectedEdges","startSimulation","stopSimulation","stabilize","getSelectedNodes","getSelectedEdges","getNodeAt","getEdgeAt","edge","selectNodes","selectEdges","getViewPosition","releaseNode","getOptionsFromConfigurator","_CachedImage","_CachedImage2","imageBroken","url","brokenUrl","imageToLoadBrokenUrlOn","onerror","image","imageToRedrawWith","cachedImage","img","onload","_fixImageCoordinates","_redrawWithImage","_tryloadBrokenUrl","imageToCache","CachedImage","NUM_ITERATIONS","Image","coordinates","_fillMipMap","drawImage","iterations","_to","_isImageOk","complete","naturalWidth","Groups","defaultIndex","groupsArray","defaultGroups","useDefaultGroups","optionFields","groupname","_index","_Node","_Node2","_Label","_Label2","NodesHandler","nodesListeners","borderWidthSelected","brokenImage","fixed","face","strokeColor","labelHighlightBold","level","mass","scaling","maxVisible","drawThreshold","customScalingFunction","shadow","shape","shapeProperties","borderDashes","useImageSize","useBorderWithImage","parseOptions","updateShape","updateLabelModule","_reset","_nodeId2","doNotEmit","oldNodesData","newNodes","positionInitially","changedData","dataChanged","clearPositions","dataArray","_node","_node2","boundingBox","nodeList","nodeObj","toId","fromId","edgeList","_Box","_Box2","_Circle","_Circle2","_CircularImage","_CircularImage2","_Database","_Database2","_Diamond","_Diamond2","_Dot","_Dot2","_Ellipse","_Ellipse2","_Icon","_Icon2","_Image","_Image2","_Square","_Square2","_Star","_Star2","_Text","_Text2","_Triangle","_Triangle2","_TriangleDown","_TriangleDown2","Node","imagelist","_x","_y","baseFontSize","predefinedPosition","labelModule","sendPhysicsUpdates","newX","newFixed","physOpts","newY","currentShape","groupObj","imageObj","load","distanceToBorder","sizeDiff","fontDiff","updateBoundingBox","resize","parentOptions","newOptions","changedPhysicsOptions","parsedColor","_slicedToArray","sliceIterator","_arr","_n","_e","_s","Label","edgelabel","pointToSelf","fontOptions","yLine","isEdgeLabel","nodeOptions","labelDirty","baseline","viewFontSize","calculateLabelSize","_drawBackground","_drawText","_getColor2","_getColor","_getColor3","fontColor","_setAlignment2","_setAlignment","_setAlignment3","lineCount","strokeText","_processLabel","measureText","newOptionsArray","_NodeBase2","_NodeBase3","Box","_NodeBase","textSize","getTextSize","selectionLineWidth","roundRect","enableShadow","disableShadow","save","enableBorderDashes","disableBorderDashes","restore","NodeBase","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY","setLineDash","dashes","_CircleImageBase2","_CircleImageBase3","Circle","_CircleImageBase","diameter","_drawRawCircle","CircleImageBase","labelOffset","imageLoaded","ratio","neutralborderWidth","globalAlpha","drawImageAtPosition","labelDimensions","CircularImage","_swapToImageResizeWhenImageLoaded","_resizeImage","clip","_drawImageAtPosition","_drawImageLabel","Database","database","_distanceToBorder","_ShapeBase2","_ShapeBase3","Diamond","_ShapeBase","_resizeShape","_drawShape","ShapeBase","sizeMultiplier","Dot","Ellipse","ellipse","Icon","_icon","Square","Star","Text","Triangle","TriangleDown","_Edge","_Edge2","EdgesHandler","edgesListeners","arrows","scaleFactor","arrowStrikethrough","hoverWidth","selectionWidth","selfReferenceSize","smooth","forceDirection","roundness","emitChange","edgeData","edgeOptions","reconnectEdges","markAllEdgesAsDirty","updateEdgeType","_edgeId","oldEdgesData","edgesData","oldEdge","disconnect","showInternalIds","connect","cleanup","edgeType","colorDirty","_CubicBezierEdge","_CubicBezierEdge2","_BezierEdgeDynamic","_BezierEdgeDynamic2","_BezierEdgeStatic","_BezierEdgeStatic2","_StraightEdge","_StraightEdge2","Edge","baseWidth","connected","_setInteractionWidths","changeInType","previousConnected","attachEdge","detachEdge","widthDiff","viaNode","getViaNode","arrowData","fromPoint","toPoint","getArrowData","core","drawLine","drawArrows","drawLabel","drawArrowHead","node1","node2","getPoint","translate","_rotateForLabelAlignment","_pointOnCircle","xFrom","yFrom","xTo","yTo","xObj","yObj","getDistanceToEdge","angleInDegrees","rotate","percentage","colorsDefined","_CubicBezierEdgeBase2","_CubicBezierEdgeBase3","CubicBezierEdge","_CubicBezierEdgeBase","viaNodes","via1","via2","bezierCurveTo","_getViaCoordinates","nearNode","_findBorderPositionBezier","x3","y3","_getDistanceToBezierEdge","_ref3","_ref4","vec","_BezierEdgeBase2","_BezierEdgeBase3","CubicBezierEdgeBase","_BezierEdgeBase","minDistance","lastX","lastY","_getDistanceToLine","_EdgeBase2","_EdgeBase3","BezierEdgeBase","_EdgeBase","distanceToPoint","via","EdgeBase","getColor","getLineWidth","_drawDashedLine","_drawLine","_line","_getCircleData2","_getCircleData","_getCircleData3","pattern","lineDashOffset","_getCircleData4","_getCircleData5","dashedLine","_getCircleData6","_getCircleData7","_radius","_findBorderPosition","_findBorderPositionCircle","_getCircleData8","_getCircleData9","colorOptions","grd","createLinearGradient","fromColor","toColor","addColorStop","_getDistanceToEdge","_getCircleData10","_getCircleData11","px","py","something","arrowPoint","guideOffset","findBorderPosition","guidePos","_getCircleData12","_getCircleData13","arrow","BezierEdgeDynamic","_boundFunction","positionBezierNode","physicsChange","setupSupportNode","parentEdgeId","quadraticCurveTo","BezierEdgeStatic","xVia","yVia","pi","originalAngle","myAngle","_pi","_originalAngle","_myAngle","StraightEdge","edgeSegmentLength","toBorderDist","toBorderPoint","borderPos","_PhysicsBase2","_PhysicsBase3","_PhysicsWorkerWrapper","_PhysicsWorkerWrapper2","PhysicsEngine","_PhysicsBase","physicsEnabled","simulationInterval","requiresTimeout","freezeCache","renderTimer","ready","useWorker","barnesHut","theta","gravitationalConstant","centralGravity","springLength","springConstant","damping","avoidOverlap","forceAtlas2Based","repulsion","nodeDistance","hierarchicalRepulsion","maxVelocity","minVelocity","stabilization","updateInterval","onlyDynamicEdges","timestep","adaptiveTimestep","layoutFailed","draggingNodes","positionUpdateHandler","physicsUpdateHandler","initPhysics","physicsWorker","terminate","initPhysicsWorker","postMessage","initEmbeddedPhysics","initPhysicsSolvers","parentScript","getElementById","lastIndexOf","scripts","getElementsByTagName","_src","physicsWorkerMessageHandler","positions","_physicsUpdateHandler","createPhysicsNode","createPhysicsEdge","nodeIds","edgeIds","stabilized","stabilizationIterations","_receivedPositions","_finalizeStabilization","setX","setY","_updateWorkerStabilized","viewFunction","simulationStep","_emitStabilized","startTime","physicsTick","runDoubleSpeed","amountOfIterations","startedStabilization","_sendWorkerStabilized","physicsEdge","physicsBody","forces","physicsNodeIndices","physicsEdgeIndices","physicsWorkerNodes","physicsWorkerEdges","velocities","previousStates","vx","vy","modelOptions","setFixed","targetIterations","_freezeNodes","_stabilizationBatch","_restoreFrozenNodes","_BarnesHutSolver","_BarnesHutSolver2","_RepulsionSolver","_RepulsionSolver2","_HierarchicalRepulsionSolver","_HierarchicalRepulsionSolver2","_SpringSolver","_SpringSolver2","_HierarchicalSpringSolver","_HierarchicalSpringSolver2","_CentralGravitySolver","_CentralGravitySolver2","_FA2BasedRepulsionSolver","_FA2BasedRepulsionSolver2","_FA2BasedCentralGravitySolver","_FA2BasedCentralGravitySolver2","PhysicsBase","referenceState","adaptiveTimestepEnabled","adaptiveCounter","adaptiveInterval","nodesSolver","edgesSolver","gravitySolver","calculateForces","moveNodes","revert","_evaluateStepQuality","isWorker","reference","maxNodeVelocity","averageNodeVelocity","nodeVelocity","_performStep","solve","BarnesHutSolver","barnesHutTree","randomSeed","thetaInversed","overlapAvoidanceFactor","nodeCount","_formBarnesHutTree","_getForceContribution","NW","NE","SW","SE","parentBranch","childrenCount","centerOfMass","calcSize","_calculateForces","gravityForce","fx","fy","minX","minY","maxX","rootSize","halfRootSize","maxWidth","_splitBranch","_placeInTree","totalMass","totalMassInv","biggestSize","skipMassUpdate","_updateBranchMass","_placeInRegion","region","seededRandom","containedNode","_insertRegion","childSize","_drawBranch","branch","RepulsionSolver","repulsingForce","HierarchicalRepulsionSolver","SpringSolver","edgeLength","node3","_calculateSpringForce","springForce","HierarchicalSpringSolver","springFx","springFy","totalFx","totalFy","correctionFx","correctionFy","_i4","_nodeId3","CentralGravitySolver","_BarnesHutSolver3","ForceAtlas2BasedRepulsionSolver","degree","_CentralGravitySolver3","ForceAtlas2BasedCentralGravitySolver","_PhysicsWorker","_PhysicsWorker2","handleMessage","PhysicsWorker","toRemove","processRemovals","sendTickResults","receivePositions","updateProperties","addElements","removeElements","debug","updatedNode","optionsNode","opts","_opts","replaceElements","newNode","_NetworkUtil","_NetworkUtil2","_Cluster","_Cluster2","ClusterEngine","clusteredNodes","clusteredEdges","hubsize","_getHubSize","_checkOptions","nodesToCluster","refreshData","joinCondition","childNodesObj","childEdgesObj","clonedOptions","cloneOptions","_cluster","edgeCount","clusters","usedNodes","relevantEdgeCount","gatheringSuccessful","childNodeId","_getConnectedId","clusterByEdgeCount","clusterNodeProperties","parentNodeId","parentClonedOptions","childClonedOptions","clusterEdgeProperties","childNode","otherNodeId","childKeys","createEdges","_edge","newEdge","clusteringEdgeReplacingId","_backupEdgeOptions","processProperties","childNodesOptions","childEdgesOptions","_clonedOptions","clusterId","_getClusterPosition","clusterNode","containedNodes","containedEdges","_createClusterEdges","originalOptions","clusterNodeId","releaseFunction","clusterPosition","newPositions","_containedNode","_nodeId4","_containedNode2","_nodeId5","_containedNode3","edgesToBeDeleted","otherCluster","transferEdge","replacedEdge","_restoreEdge","nodesArray","average","averageSquared","hubCounter","largestHub","variance","standardDeviation","hubThreshold","NetworkUtil","allNodes","specificNodes","amountOfConnections","_Node3","Cluster","requestAnimationFrame","mozRequestAnimationFrame","webkitRequestAnimationFrame","msRequestAnimationFrame","CanvasRenderer","redrawRequested","renderingActive","renderRequests","allowRedraw","hideEdgesOnDrag","hideNodesOnDrag","_determineBrowserMethod","_resizeNodes","_requestRedraw","_startRendering","cancelAnimationFrame","_renderStep","_drawEdges","_drawNodes","alwaysShow","topLeft","bottomRight","viewableArea","isSelected","isBoundingBoxOverlappingWith","browserType","Canvas","resizeTimer","resizeFunction","cameraState","hammerFrame","_cleanUp","previousWidth","previousHeight","widthRatio","heightRatio","newScale","currentViewCenter","distanceFromCenter","tabIndex","_prepareValue","emitEvent","oldWidth","oldHeight","previousRatio","_getCameraState","_setCameraState","_XconvertCanvasToDOM","_YconvertCanvasToDOM","_XconvertDOMtoCanvas","_YconvertDOMtoCanvas","View","animationSpeed","renderRefreshRate","animationEasingFunction","easingTime","sourceScale","targetScale","sourceTranslation","targetTranslation","lockedOnNodeId","lockedOnNodeOffset","touchTime","initialZoom","zoomLevel","positionDefined","yDistance","xZoomLevel","yZoomLevel","findCenter","animationOptions","nodePosition","lockedOnNode","animateView","locked","_transitionRedraw","viewCenter","_lockedRedraw","finished","_NavigationHandler","_NavigationHandler2","_Popup","_Popup2","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","nodesChanged","edgesChanged","nodeSelected","selectObject","selectionObj","xFixed","yFixed","scaleOld","preScaleDragPointer","scaleFrac","tx","ty","postScaleDragPointer","popupVisible","_checkHidePopup","setPosition","_checkShowPopup","hoverObject","pointerObj","previousPopupObjId","nodeUnderCursor","popupType","overlappingNodes","isOverlappingWith","getTitle","overlappingEdges","popupTargetType","popupTargetId","setText","_pointerToPositionObject","stillOnObj","overNode","NavigationHandler","iconsCreated","navigationHammers","boundFunctions","activated","configureKeyboardBindings","loadNavigationElements","cleanNavigation","navigationDOM","navigationDivs","navigationDivActions","_fit","bindToRedraw","_stopMovement","boundAction","unbindFromRedraw","Popup","doShow","SelectionHandler","hoverObj","selectConnectedEdges","hoverConnectedEdges","updateSelection","selectionChanged","deselectObject","emptySelection","DOM","highlightEdges","_selectConnectedEdges","_addToSelection","_removeFromSelection","canvasPos","returnNode","positionObject","_getAllNodesOverlappingWith","_getEdgesOverlappingWith","returnEdge","_getAllEdgesOverlappingWith","_unselectConnectedEdges","clusterSize","_addToHover","hoverChanged","blurObject","_hoverConnectedEdges","idArray","RangeError","LayoutEngine","initialRandomSeed","setPhysics","optionsBackup","improvedLayout","hierarchical","levelSeparation","nodeSpacing","treeSpacing","blockShifting","edgeMinimization","parentCentralization","sortMethod","setupHierarchicalLayout","layoutNetwork","prevHierarchicalState","adaptAllOptionsForHierarchicalLayout","clusterOptions","startLength","before","clusterBridges","_declusterAll","info","kamadaKawai","_shiftToCenter","getRangeCore","clustersPresent","definedLevel","undefinedLevel","hierarchicalLevels","lastNodeOnLevel","hierarchicalChildrenReference","hierarchicalParentReference","hierarchicalTrees","treeIndex","distributionOrdering","distributionIndex","distributionOrderingPresence","_determineLevelsByHubsize","_determineLevelsDirected","_determineLevelsCustomCallback","distribution","_getDistribution","_generateMap","_placeNodesByHierarchy","_condenseHierarchy","stillShifting","branches","shiftTree","_getPositionForHierarchy","_setPositionForHierarchy","getTreeSize","getTreeSizes","treeWidths","getBranchNodes","getBranchBoundary","branchMap","maxLevel","minSpace","maxSpace","branchNode","_getSpaceAroundNode2","_getSpaceAroundNode","_getSpaceAroundNode3","minSpaceNode","maxSpaceNode","getMaxLevel","_getMaxLevel","getCollisionLevel","maxLevel1","maxLevel2","hasSameParent","parents1","parents2","shiftElementsCloser","levels","centerParents","levelNodes","branchShiftCallback","centerParent","branchNodes1","branchNodes2","_getBranchBoundary","_getBranchBoundary2","max1","_getBranchBoundary3","_getBranchBoundary4","min2","minSpace2","_shiftBlock","_centerParent","minimizeEdgeLength","allEdges","nodeLevel","C2","referenceNodes","aboveEdges","otherNode","getFx","getDFx","getGuess","guess","guessMap","dfx","branchNodes","_getBranchBoundary5","_getBranchBoundary6","minSpaceBranch","maxSpaceBranch","branchOffset","_getSpaceAroundNode4","_getSpaceAroundNode5","newPosition","treeSizes","useMap","prevNode","nextNode","nextPos","parents","parentId","minPos","maxPos","_i5","_getSpaceAroundNode6","_getSpaceAroundNode7","positionedNodes","nodeArray","_indexArrayToNodes","_sortNodeArray","handledNodeCount","_validataPositionAndContinue","parentLevel","_i6","childNodeLevel","_i7","previousPos","sharedParent","_findCommonParent","withChild","_placeBranchNodes","hubSize","levelDownstream","nodeA","nodeB","_crawlNetwork","levelByDirection","_setMinLevelToZero","minLevel","fillInRelations","_this7","startingNodeId","crawler","tree","_this8","shifter","childA","childB","_this9","iterateParents","findParent","foundParent","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","fromSelect","toSelect","overlappingNodeIds","_performEditEdge","targetNode","connectionEdge","connectFromId","_performAddEdge","clickData","defaultData","sourceNodeId","targetNodeId","_FloydWarshall","_FloydWarshall2","KamadaKawai","edgeStrength","distanceSolver","edgesArray","ignoreClusters","D_matrix","getDistances","_createL_matrix","_createK_matrix","_createE_matrix","maxIterations","maxEnergy","highE_nodeId","dE_dx","dE_dy","delta_m","subIterations","_getHighestEnergyNode2","_getHighestEnergyNode","_getHighestEnergyNode3","_moveNode","_getEnergy2","_getEnergy","_getEnergy3","maxEnergyNodeId","dE_dx_max","dE_dy_max","nodeIdx","_getEnergy4","_getEnergy5","_E_sums$m","E_sums","d2E_dx2","d2E_dxdy","d2E_dy2","x_m","y_m","km","K_matrix","lm","L_matrix","iIdx","x_i","y_i","kmat","lmat","denominator","D","_updateE_matrix","E_matrix","mIdx","_mIdx","colm","kcolm","lcolm","cell","oldDx","oldDy","FloydWarshall","knode","inode","icolm","jnode","jcolm","CanvasRenderingContext2D","square","s2","ir","triangleDown","star","diamond","r2d","ox","oy","xe","ye","xm","ym","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","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","edit","del","back","addDescription","edgeDescription","editEdgeDescription","createEdgeError","deleteClusterError","editClusterError"],"mappings":"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","file":"vis"} \ No newline at end of file diff --git a/dist/vis.min.js b/dist/vis.min.js index 97a8dd092..5b8bb620b 100644 --- a/dist/vis.min.js +++ b/dist/vis.min.js @@ -5,7 +5,7 @@ * A dynamic, browser-based visualization library. * * @version 4.15.4 - * @date 2023-09-15 + * @date 2023-09-21 * * @license * Copyright (C) 2011-2016 Almende B.V, http://almende.com @@ -24,24 +24,24 @@ */ "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(9),e.DataView=i(11),e.Queue=i(10),e.Graph3d=i(12),e.graph3d={Camera:i(16),Filter:i(17),Point2d:i(15),Point3d:i(14),Slider:i(18),StepNumber:i(19)},e.Timeline=i(20),e.Graph2d=i(49),e.TimelineChart=i(63),e.timeline={Core:i(31),DateUtil:i(30),Range:i(28),stack:i(41),TimeStep:i(33),components:{items:{Item:i(44),BackgroundItem:i(47),BoxItem:i(43),PointItem:i(45),RangeItem:i(46)},BackgroundGroup:i(42),Component:i(29),CurrentTime:i(38),CustomTime:i(36),DataAxis:i(53),DataScale:i(54),GraphGroup:i(55),Group:i(40),ItemSet:i(39),Legend:i(57),LineGraph:i(50),TimeAxis:i(32),DrawLabels:i(59),DrawLines:i(60),TimelineChartDataAxis:i(58),TimelineChartLineGraph:i(64)}},e.Network=i(67),e.network={Images:i(68),dotparser:i(128),gephiParser:i(129),allOptions:i(124)},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.moment=i(2),e.Hammer=i(23),e.keycharm=i(35)},function(t,e,i){var o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},n=i(2),s=i(6);e.isNumber=function(t){return t instanceof Number||"number"==typeof t},e.recursiveDOMDelete=function(t){if(t)for(;!0===t.hasChildNodes();)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)){if(r.exec(t))return!0;if(!isNaN(Date.parse(t)))return!0}return!1},e.randomUUID=function(){return s.v4()},e.assignAllKeys=function(t,e){for(var i in t)t.hasOwnProperty(i)&&"object"!==o(t[i])&&(t[i]=e)},e.fillIfDefined=function(t,i){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];for(var s in t)void 0!==i[s]&&("object"!==o(i[s])?void 0!==i[s]&&null!==i[s]||void 0===t[s]||!0!==n?t[s]=i[s]:delete t[s]:"object"===o(t[s])&&e.fillIfDefined(t[s],i[s],n))},e.protoExtend=function(t,e){for(var i=1;i3&&void 0!==arguments[3]&&arguments[3];if(Array.isArray(o))throw new TypeError("Arrays are not supported by deepExtend");for(var s=2;s3&&void 0!==arguments[3]&&arguments[3];if(Array.isArray(o))throw new TypeError("Arrays are not supported by deepExtend");for(var s in o)if(o.hasOwnProperty(s)&&-1==t.indexOf(s))if(o[s]&&o[s].constructor===Object)void 0===i[s]&&(i[s]={}),i[s].constructor===Object?e.deepExtend(i[s],o[s]):null===o[s]&&void 0!==i[s]&&!0===n?delete i[s]:i[s]=o[s];else if(Array.isArray(o[s])){i[s]=[];for(var r=0;r=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(!0===e.isString(t)){if(!0===e.isValidRGB(t)){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(!0===e.isValidHex(t)){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;return{h:60*((t==o?3:i==o?1:5)-s/(n-o))/360,s:(n-o)/n,v:n}};var a={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=a.split(t.style.cssText),n=a.split(i),s=e.extend(o,n);t.style.cssText=a.join(s)},e.removeCssText=function(t,e){var i=a.split(t.style.cssText),o=a.split(e);for(var n in o)o.hasOwnProperty(n)&&delete i[n];t.style.cssText=a.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){return/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(t)},e.isValidRGB=function(t){return t=t.replace(" ",""),/rgb\((\d{1,3}),(\d{1,3}),(\d{1,3})\)/i.test(t)},e.isValidRGBA=function(t){return t=t.replace(" ",""),/rgba\((\d{1,3}),(\d{1,3}),(\d{1,3}),(.{1,3})\)/i.test(t)},e.selectiveBridgeObject=function(t,i){if("object"==(void 0===i?"undefined":o(i))){for(var n=Object.create(i),s=0;s0&&e(o,t[n-1])<0;n--)t[n]=t[n-1];t[n]=o}return t},e.mergeOptions=function(t,e,i){var o=(arguments.length>3&&void 0!==arguments[3]&&arguments[3],arguments.length>4&&void 0!==arguments[4]?arguments[4]:{});if(null===e[i])t[i]=Object.create(o[i]);else if(void 0!==e[i])if("boolean"==typeof e[i])t[i].enabled=e[i];else{void 0===e[i].enabled&&(t[i].enabled=!0);for(var n in e[i])e[i].hasOwnProperty(n)&&(t[i][n]=e[i][n])}},e.binarySearchCustom=function(t,e,i,o){for(var n=0,s=0,r=t.length-1;s<=r&&n<1e4;){var a=Math.floor((s+r)/2),h=t[a],d=void 0===o?h[i]:h[i][o],l=e(d);if(0==l)return a;-1==l?s=a+1:r=a-1,n++}return-1},e.binarySearchValue=function(t,e,i,o,n){for(var s,r,a,h,d=0,l=0,u=t.length-1,n=void 0!=n?n:function(t,e){return t==e?0:t0)return"before"==o?Math.max(0,h-1):h;if(n(r,e)<0&&n(a,e)>0)return"before"==o?h:Math.min(t.length-1,h+1);n(r,e)<0?l=h+1:u=h-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 t<.5?2*t*t:(4-2*t)*t-1},easeInCubic:function(t){return t*t*t},easeOutCubic:function(t){return--t*t*t+1},easeInOutCubic:function(t){return t<.5?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 t<.5?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 t<.5?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){var o;(function(t){!function(e,i){t.exports=i()}(0,function(){function e(){return en.apply(null,arguments)}function i(t){return t instanceof Array||"[object Array]"===Object.prototype.toString.call(t)}function n(t){return null!=t&&"[object Object]"===Object.prototype.toString.call(t)}function s(t,e){return Object.prototype.hasOwnProperty.call(t,e)}function r(t){if(Object.getOwnPropertyNames)return 0===Object.getOwnPropertyNames(t).length;var e;for(e in t)if(s(t,e))return!1;return!0}function a(t){return void 0===t}function h(t){return"number"==typeof t||"[object Number]"===Object.prototype.toString.call(t)}function d(t){return t instanceof Date||"[object Date]"===Object.prototype.toString.call(t)}function l(t,e){var i,o=[];for(i=0;i0)for(i=0;i=0?i?"+":"":"-")+Math.pow(10,Math.max(0,n)).toString().substr(1)+o}function C(t,e,i,o){var n=o;"string"==typeof o&&(n=function(){return this[o]()}),t&&(pn[t]=n),e&&(pn[e[0]]=function(){return E(n.apply(this,arguments),e[1],e[2])}),i&&(pn[i]=function(){return this.localeData().ordinal(n.apply(this,arguments),t)})}function T(t){return t.match(/\[[\s\S]/)?t.replace(/^\[|\]$/g,""):t.replace(/\\/g,"")}function P(t){var e,i,o=t.match(ln);for(e=0,i=o.length;e=0&&un.test(t);)t=t.replace(un,i),un.lastIndex=0,o-=1;return t}function L(t){var e=this._longDateFormat[t],i=this._longDateFormat[t.toUpperCase()];return e||!i?e:(this._longDateFormat[t]=i.match(ln).map(function(t){return"MMMM"===t||"MM"===t||"DD"===t||"dddd"===t?t.slice(1):t}).join(""),this._longDateFormat[t])}function A(){return this._invalidDate}function R(t){return this._ordinal.replace("%d",t)}function z(t,e,i,o){var n=this._relativeTime[i];return k(n)?n(t,e,i,o):n.replace(/%d/i,t)}function j(t,e){var i=this._relativeTime[t>0?"future":"past"];return k(i)?i(e):i.replace(/%s/i,e)}function F(t,e){var i=t.toLowerCase();yn[i]=yn[i+"s"]=yn[e]=t}function B(t){return"string"==typeof t?yn[t]||yn[t.toLowerCase()]:void 0}function H(t){var e,i,o={};for(i in t)s(t,i)&&(e=B(i))&&(o[e]=t[i]);return o}function Y(t,e){gn[t]=e}function W(t){var e,i=[];for(e in t)s(t,e)&&i.push({unit:e,priority:gn[e]});return i.sort(function(t,e){return t.priority-e.priority}),i}function V(t){return t%4==0&&t%100!=0||t%400==0}function G(t){return t<0?Math.ceil(t)||0:Math.floor(t)}function U(t){var e=+t,i=0;return 0!==e&&isFinite(e)&&(i=G(e)),i}function q(t,i){return function(o){return null!=o?(Z(this,t,o),e.updateOffset(this,i),this):X(this,t)}}function X(t,e){return t.isValid()?t._d["get"+(t._isUTC?"UTC":"")+e]():NaN}function Z(t,e,i){t.isValid()&&!isNaN(i)&&("FullYear"===e&&V(t.year())&&1===t.month()&&29===t.date()?(i=U(i),t._d["set"+(t._isUTC?"UTC":"")+e](i,t.month(),rt(i,t.month()))):t._d["set"+(t._isUTC?"UTC":"")+e](i))}function K(t){return t=B(t),k(this[t])?this[t]():this}function J(t,e){if("object"==typeof t){t=H(t);var i,o=W(t);for(i=0;i=0?(a=new Date(t+400,e,i,o,n,s,r),isFinite(a.getFullYear())&&a.setFullYear(t)):a=new Date(t,e,i,o,n,s,r),a}function _t(t){var e,i;return t<100&&t>=0?(i=Array.prototype.slice.call(arguments),i[0]=t+400,e=new Date(Date.UTC.apply(null,i)),isFinite(e.getUTCFullYear())&&e.setUTCFullYear(t)):e=new Date(Date.UTC.apply(null,arguments)),e}function wt(t,e,i){var o=7+e-i;return-(7+_t(t,0,o).getUTCDay()-e)%7+o-1}function xt(t,e,i,o,n){var s,r,a=(7+i-o)%7,h=wt(t,o,n),d=1+7*(e-1)+a+h;return d<=0?(s=t-1,r=yt(s)+d):d>yt(t)?(s=t+1,r=d-yt(t)):(s=t,r=d),{year:s,dayOfYear:r}}function kt(t,e,i){var o,n,s=wt(t.year(),e,i),r=Math.floor((t.dayOfYear()-s-1)/7)+1;return r<1?(n=t.year()-1,o=r+Ot(n,e,i)):r>Ot(t.year(),e,i)?(o=r-Ot(t.year(),e,i),n=t.year()+1):(n=t.year(),o=r),{week:o,year:n}}function Ot(t,e,i){var o=wt(t,e,i),n=wt(t+1,e,i);return(yt(t)-o+n)/7}function Mt(t){return kt(t,this._week.dow,this._week.doy).week}function St(){return this._week.dow}function Dt(){return this._week.doy}function Et(t){var e=this.localeData().week(this);return null==t?e:this.add(7*(t-e),"d")}function Ct(t){var e=kt(this,1,4).week;return null==t?e:this.add(7*(t-e),"d")}function Tt(t,e){return"string"!=typeof t?t:isNaN(t)?(t=e.weekdaysParse(t),"number"==typeof t?t:null):parseInt(t,10)}function Pt(t,e){return"string"==typeof t?e.weekdaysParse(t)%7||7:isNaN(t)?null:t}function Nt(t,e){return t.slice(e,7).concat(t.slice(0,e))}function It(t,e){var o=i(this._weekdays)?this._weekdays:this._weekdays[t&&!0!==t&&this._weekdays.isFormat.test(e)?"format":"standalone"];return!0===t?Nt(o,this._week.dow):t?o[t.day()]:o}function Lt(t){return!0===t?Nt(this._weekdaysShort,this._week.dow):t?this._weekdaysShort[t.day()]:this._weekdaysShort}function At(t){return!0===t?Nt(this._weekdaysMin,this._week.dow):t?this._weekdaysMin[t.day()]:this._weekdaysMin}function Rt(t,e,i){var o,n,s,r=t.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],o=0;o<7;++o)s=c([2e3,1]).day(o),this._minWeekdaysParse[o]=this.weekdaysMin(s,"").toLocaleLowerCase(),this._shortWeekdaysParse[o]=this.weekdaysShort(s,"").toLocaleLowerCase(),this._weekdaysParse[o]=this.weekdays(s,"").toLocaleLowerCase();return i?"dddd"===e?(n=Rn.call(this._weekdaysParse,r),-1!==n?n:null):"ddd"===e?(n=Rn.call(this._shortWeekdaysParse,r),-1!==n?n:null):(n=Rn.call(this._minWeekdaysParse,r),-1!==n?n:null):"dddd"===e?-1!==(n=Rn.call(this._weekdaysParse,r))?n:-1!==(n=Rn.call(this._shortWeekdaysParse,r))?n:(n=Rn.call(this._minWeekdaysParse,r),-1!==n?n:null):"ddd"===e?-1!==(n=Rn.call(this._shortWeekdaysParse,r))?n:-1!==(n=Rn.call(this._weekdaysParse,r))?n:(n=Rn.call(this._minWeekdaysParse,r),-1!==n?n:null):-1!==(n=Rn.call(this._minWeekdaysParse,r))?n:-1!==(n=Rn.call(this._weekdaysParse,r))?n:(n=Rn.call(this._shortWeekdaysParse,r),-1!==n?n:null)}function zt(t,e,i){var o,n,s;if(this._weekdaysParseExact)return Rt.call(this,t,e,i);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),o=0;o<7;o++){if(n=c([2e3,1]).day(o),i&&!this._fullWeekdaysParse[o]&&(this._fullWeekdaysParse[o]=new RegExp("^"+this.weekdays(n,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[o]=new RegExp("^"+this.weekdaysShort(n,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[o]=new RegExp("^"+this.weekdaysMin(n,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[o]||(s="^"+this.weekdays(n,"")+"|^"+this.weekdaysShort(n,"")+"|^"+this.weekdaysMin(n,""),this._weekdaysParse[o]=new RegExp(s.replace(".",""),"i")),i&&"dddd"===e&&this._fullWeekdaysParse[o].test(t))return o;if(i&&"ddd"===e&&this._shortWeekdaysParse[o].test(t))return o;if(i&&"dd"===e&&this._minWeekdaysParse[o].test(t))return o;if(!i&&this._weekdaysParse[o].test(t))return o}}function jt(t){if(!this.isValid())return null!=t?this:NaN;var e=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=t?(t=Tt(t,this.localeData()),this.add(t-e,"d")):e}function Ft(t){if(!this.isValid())return null!=t?this:NaN;var e=(this.day()+7-this.localeData()._week.dow)%7;return null==t?e:this.add(t-e,"d")}function Bt(t){if(!this.isValid())return null!=t?this:NaN;if(null!=t){var e=Pt(t,this.localeData());return this.day(this.day()%7?e:e-7)}return this.day()||7}function Ht(t){return this._weekdaysParseExact?(s(this,"_weekdaysRegex")||Vt.call(this),t?this._weekdaysStrictRegex:this._weekdaysRegex):(s(this,"_weekdaysRegex")||(this._weekdaysRegex=os),this._weekdaysStrictRegex&&t?this._weekdaysStrictRegex:this._weekdaysRegex)}function Yt(t){return this._weekdaysParseExact?(s(this,"_weekdaysRegex")||Vt.call(this),t?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(s(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=ns),this._weekdaysShortStrictRegex&&t?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}function Wt(t){return this._weekdaysParseExact?(s(this,"_weekdaysRegex")||Vt.call(this),t?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(s(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=ss),this._weekdaysMinStrictRegex&&t?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}function Vt(){function t(t,e){return e.length-t.length}var e,i,o,n,s,r=[],a=[],h=[],d=[];for(e=0;e<7;e++)i=c([2e3,1]).day(e),o=et(this.weekdaysMin(i,"")),n=et(this.weekdaysShort(i,"")),s=et(this.weekdays(i,"")),r.push(o),a.push(n),h.push(s),d.push(o),d.push(n),d.push(s);r.sort(t),a.sort(t),h.sort(t),d.sort(t),this._weekdaysRegex=new RegExp("^("+d.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+h.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+a.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+r.join("|")+")","i")}function Gt(){return this.hours()%12||12}function Ut(){return this.hours()||24}function qt(t,e){C(t,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),e)})}function Xt(t,e){return e._meridiemParse}function Zt(t){return"p"===(t+"").toLowerCase().charAt(0)}function Kt(t,e,i){return t>11?i?"pm":"PM":i?"am":"AM"}function Jt(t,e){var i,o=Math.min(t.length,e.length);for(i=0;i0;){if(o=te(n.slice(0,e).join("-")))return o;if(i&&i.length>=e&&Jt(n,i)>=e-1)break;e--}s++}return rs}function te(e){var i=null;if(void 0===ls[e]&&void 0!==t&&t&&t.exports)try{i=rs._abbr,o,function(){var t=new Error('Cannot find module "./locale"');throw t.code="MODULE_NOT_FOUND",t}(),ee(i)}catch(t){ls[e]=null}return ls[e]}function ee(t,e){var i;return t&&(i=a(e)?ne(t):ie(t,e),i?rs=i:"undefined"!=typeof console&&console.warn&&console.warn("Locale "+t+" not found. Did you forget to load it?")),rs._abbr}function ie(t,e){if(null!==e){var i,o=ds;if(e.abbr=t, null!=ls[t])x("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),o=ls[t]._config;else if(null!=e.parentLocale)if(null!=ls[e.parentLocale])o=ls[e.parentLocale]._config;else{if(null==(i=te(e.parentLocale)))return us[e.parentLocale]||(us[e.parentLocale]=[]),us[e.parentLocale].push({name:t,config:e}),null;o=i._config}return ls[t]=new S(M(o,e)),us[t]&&us[t].forEach(function(t){ie(t.name,t.config)}),ee(t),ls[t]}return delete ls[t],null}function oe(t,e){if(null!=e){var i,o,n=ds;null!=ls[t]&&null!=ls[t].parentLocale?ls[t].set(M(ls[t]._config,e)):(o=te(t),null!=o&&(n=o._config),e=M(n,e),null==o&&(e.abbr=t),i=new S(e),i.parentLocale=ls[t],ls[t]=i),ee(t)}else null!=ls[t]&&(null!=ls[t].parentLocale?(ls[t]=ls[t].parentLocale,t===ee()&&ee(t)):null!=ls[t]&&delete ls[t]);return ls[t]}function ne(t){var e;if(t&&t._locale&&t._locale._abbr&&(t=t._locale._abbr),!t)return rs;if(!i(t)){if(e=te(t))return e;t=[t]}return $t(t)}function se(){return an(ls)}function re(t){var e,i=t._a;return i&&-2===f(t).overflow&&(e=i[Fn]<0||i[Fn]>11?Fn:i[Bn]<1||i[Bn]>rt(i[jn],i[Fn])?Bn:i[Hn]<0||i[Hn]>24||24===i[Hn]&&(0!==i[Yn]||0!==i[Wn]||0!==i[Vn])?Hn:i[Yn]<0||i[Yn]>59?Yn:i[Wn]<0||i[Wn]>59?Wn:i[Vn]<0||i[Vn]>999?Vn:-1,f(t)._overflowDayOfYear&&(eBn)&&(e=Bn),f(t)._overflowWeeks&&-1===e&&(e=Gn),f(t)._overflowWeekday&&-1===e&&(e=Un),f(t).overflow=e),t}function ae(t){var e,i,o,n,s,r,a=t._i,h=cs.exec(a)||ps.exec(a);if(h){for(f(t).iso=!0,e=0,i=ms.length;eyt(s)||0===t._dayOfYear)&&(f(t)._overflowDayOfYear=!0),i=_t(s,0,t._dayOfYear),t._a[Fn]=i.getUTCMonth(),t._a[Bn]=i.getUTCDate()),e=0;e<3&&null==t._a[e];++e)t._a[e]=r[e]=o[e];for(;e<7;e++)t._a[e]=r[e]=null==t._a[e]?2===e?1:0:t._a[e];24===t._a[Hn]&&0===t._a[Yn]&&0===t._a[Wn]&&0===t._a[Vn]&&(t._nextDay=!0,t._a[Hn]=0),t._d=(t._useUTC?_t:bt).apply(null,r),n=t._useUTC?t._d.getUTCDay():t._d.getDay(),null!=t._tzm&&t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),t._nextDay&&(t._a[Hn]=24),t._w&&void 0!==t._w.d&&t._w.d!==n&&(f(t).weekdayMismatch=!0)}}function ge(t){var e,i,o,n,s,r,a,h,d;e=t._w,null!=e.GG||null!=e.W||null!=e.E?(s=1,r=4,i=me(e.GG,t._a[jn],kt(De(),1,4).year),o=me(e.W,1),((n=me(e.E,1))<1||n>7)&&(h=!0)):(s=t._locale._week.dow,r=t._locale._week.doy,d=kt(De(),s,r),i=me(e.gg,t._a[jn],d.year),o=me(e.w,d.week),null!=e.d?((n=e.d)<0||n>6)&&(h=!0):null!=e.e?(n=e.e+s,(e.e<0||e.e>6)&&(h=!0)):n=s),o<1||o>Ot(i,s,r)?f(t)._overflowWeeks=!0:null!=h?f(t)._overflowWeekday=!0:(a=xt(i,o,n,s,r),t._a[jn]=a.year,t._dayOfYear=a.dayOfYear)}function be(t){if(t._f===e.ISO_8601)return void ae(t);if(t._f===e.RFC_2822)return void pe(t);t._a=[],f(t).empty=!0;var i,o,n,s,r,a,h=""+t._i,d=h.length,l=0;for(n=I(t._f,t._locale).match(ln)||[],i=0;i0&&f(t).unusedInput.push(r),h=h.slice(h.indexOf(o)+o.length),l+=o.length),pn[s]?(o?f(t).empty=!1:f(t).unusedTokens.push(s),nt(s,o,t)):t._strict&&!o&&f(t).unusedTokens.push(s);f(t).charsLeftOver=d-l,h.length>0&&f(t).unusedInput.push(h),t._a[Hn]<=12&&!0===f(t).bigHour&&t._a[Hn]>0&&(f(t).bigHour=void 0),f(t).parsedDateParts=t._a.slice(0),f(t).meridiem=t._meridiem,t._a[Hn]=_e(t._locale,t._a[Hn],t._meridiem),a=f(t).era,null!==a&&(t._a[jn]=t._locale.erasConvertYear(a,t._a[jn])),ye(t),re(t)}function _e(t,e,i){var o;return null==i?e:null!=t.meridiemHour?t.meridiemHour(e,i):null!=t.isPM?(o=t.isPM(i),o&&e<12&&(e+=12),o||12!==e||(e=0),e):e}function we(t){var e,i,o,n,s,r,a=!1;if(0===t._f.length)return f(t).invalidFormat=!0,void(t._d=new Date(NaN));for(n=0;nthis.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function Ze(){if(!a(this._isDSTShifted))return this._isDSTShifted;var t,e={};return y(e,this),e=Oe(e),e._a?(t=e._isUTC?c(e._a):De(e._a),this._isDSTShifted=this.isValid()&&ze(e._a,t.toArray())>0):this._isDSTShifted=!1,this._isDSTShifted}function Ke(){return!!this.isValid()&&!this._isUTC}function Je(){return!!this.isValid()&&this._isUTC}function Qe(){return!!this.isValid()&&(this._isUTC&&0===this._offset)}function $e(t,e){var i,o,n,r=t,a=null;return Ae(t)?r={ms:t._milliseconds,d:t._days,M:t._months}:h(t)||!isNaN(+t)?(r={},e?r[e]=+t:r.milliseconds=+t):(a=Ms.exec(t))?(i="-"===a[1]?-1:1,r={y:0,d:U(a[Bn])*i,h:U(a[Hn])*i,m:U(a[Yn])*i,s:U(a[Wn])*i,ms:U(Re(1e3*a[Vn]))*i}):(a=Ss.exec(t))?(i="-"===a[1]?-1:1,r={y:ti(a[2],i),M:ti(a[3],i),w:ti(a[4],i),d:ti(a[5],i),h:ti(a[6],i),m:ti(a[7],i),s:ti(a[8],i)}):null==r?r={}:"object"==typeof r&&("from"in r||"to"in r)&&(n=ii(De(r.from),De(r.to)),r={},r.ms=n.milliseconds,r.M=n.months),o=new Le(r),Ae(t)&&s(t,"_locale")&&(o._locale=t._locale),Ae(t)&&s(t,"_isValid")&&(o._isValid=t._isValid),o}function ti(t,e){var i=t&&parseFloat(t.replace(",","."));return(isNaN(i)?0:i)*e}function ei(t,e){var i={};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 ii(t,e){var i;return t.isValid()&&e.isValid()?(e=Be(e,t),t.isBefore(e)?i=ei(t,e):(i=ei(e,t),i.milliseconds=-i.milliseconds,i.months=-i.months),i):{milliseconds:0,months:0}}function oi(t,e){return function(i,o){var n,s;return null===o||isNaN(+o)||(x(e,"moment()."+e+"(period, number) is deprecated. Please use moment()."+e+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),s=i,i=o,o=s),n=$e(i,o),ni(this,n,t),this}}function ni(t,i,o,n){var s=i._milliseconds,r=Re(i._days),a=Re(i._months);t.isValid()&&(n=null==n||n,a&&ut(t,X(t,"Month")+a*o),r&&Z(t,"Date",X(t,"Date")+r*o),s&&t._d.setTime(t._d.valueOf()+s*o),n&&e.updateOffset(t,r||a))}function si(t){return"string"==typeof t||t instanceof String}function ri(t){return b(t)||d(t)||si(t)||h(t)||hi(t)||ai(t)||null===t||void 0===t}function ai(t){var e,i,o=n(t)&&!r(t),a=!1,h=["years","year","y","months","month","M","days","day","d","dates","date","D","hours","hour","h","minutes","minute","m","seconds","second","s","milliseconds","millisecond","ms"];for(e=0;ei.valueOf():i.valueOf()9999?N(i,e?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):k(Date.prototype.toISOString)?e?this.toDate().toISOString():new Date(this.valueOf()+60*this.utcOffset()*1e3).toISOString().replace("Z",N(i,"Z")):N(i,e?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")}function ki(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var t,e,i,o,n="moment",s="";return this.isLocal()||(n=0===this.utcOffset()?"moment.utc":"moment.parseZone",s="Z"),t="["+n+'("]',e=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",i="-MM-DD[T]HH:mm:ss.SSS",o=s+'[")]',this.format(t+e+i+o)}function Oi(t){t||(t=this.isUtc()?e.defaultFormatUtc:e.defaultFormat);var i=N(this,t);return this.localeData().postformat(i)}function Mi(t,e){return this.isValid()&&(b(t)&&t.isValid()||De(t).isValid())?$e({to:this,from:t}).locale(this.locale()).humanize(!e):this.localeData().invalidDate()}function Si(t){return this.from(De(),t)}function Di(t,e){return this.isValid()&&(b(t)&&t.isValid()||De(t).isValid())?$e({from:this,to:t}).locale(this.locale()).humanize(!e):this.localeData().invalidDate()}function Ei(t){return this.to(De(),t)}function Ci(t){var e;return void 0===t?this._locale._abbr:(e=ne(t),null!=e&&(this._locale=e),this)}function Ti(){return this._locale}function Pi(t,e){return(t%e+e)%e}function Ni(t,e,i){return t<100&&t>=0?new Date(t+400,e,i)-Is:new Date(t,e,i).valueOf()}function Ii(t,e,i){return t<100&&t>=0?Date.UTC(t+400,e,i)-Is:Date.UTC(t,e,i)}function Li(t){var i,o;if(void 0===(t=B(t))||"millisecond"===t||!this.isValid())return this;switch(o=this._isUTC?Ii:Ni,t){case"year":i=o(this.year(),0,1);break;case"quarter":i=o(this.year(),this.month()-this.month()%3,1);break;case"month":i=o(this.year(),this.month(),1);break;case"week":i=o(this.year(),this.month(),this.date()-this.weekday());break;case"isoWeek":i=o(this.year(),this.month(),this.date()-(this.isoWeekday()-1));break;case"day":case"date":i=o(this.year(),this.month(),this.date());break;case"hour":i=this._d.valueOf(),i-=Pi(i+(this._isUTC?0:this.utcOffset()*Ps),Ns);break;case"minute":i=this._d.valueOf(),i-=Pi(i,Ps);break;case"second":i=this._d.valueOf(),i-=Pi(i,Ts)}return this._d.setTime(i),e.updateOffset(this,!0),this}function Ai(t){var i,o;if(void 0===(t=B(t))||"millisecond"===t||!this.isValid())return this;switch(o=this._isUTC?Ii:Ni,t){case"year":i=o(this.year()+1,0,1)-1;break;case"quarter":i=o(this.year(),this.month()-this.month()%3+3,1)-1;break;case"month":i=o(this.year(),this.month()+1,1)-1;break;case"week":i=o(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case"isoWeek":i=o(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case"day":case"date":i=o(this.year(),this.month(),this.date()+1)-1;break;case"hour":i=this._d.valueOf(),i+=Ns-Pi(i+(this._isUTC?0:this.utcOffset()*Ps),Ns)-1;break;case"minute":i=this._d.valueOf(),i+=Ps-Pi(i,Ps)-1;break;case"second":i=this._d.valueOf(),i+=Ts-Pi(i,Ts)-1}return this._d.setTime(i),e.updateOffset(this,!0),this}function Ri(){return this._d.valueOf()-6e4*(this._offset||0)}function zi(){return Math.floor(this.valueOf()/1e3)}function ji(){return new Date(this.valueOf())}function Fi(){var t=this;return[t.year(),t.month(),t.date(),t.hour(),t.minute(),t.second(),t.millisecond()]}function Bi(){var t=this;return{years:t.year(),months:t.month(),date:t.date(),hours:t.hours(),minutes:t.minutes(),seconds:t.seconds(),milliseconds:t.milliseconds()}}function Hi(){return this.isValid()?this.toISOString():null}function Yi(){return m(this)}function Wi(){return u({},f(this))}function Vi(){return f(this).overflow}function Gi(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}function Ui(t,i){var o,n,s,r=this._eras||ne("en")._eras;for(o=0,n=r.length;o=0)return h[o]}function Xi(t,i){var o=t.since<=t.until?1:-1;return void 0===i?e(t.since).year():e(t.since).year()+(i-t.offset)*o}function Zi(){var t,e,i,o=this.localeData().eras();for(t=0,e=o.length;ts&&(e=s),vo.call(this,t,e,i,o,n))}function vo(t,e,i,o,n){var s=xt(t,e,i,o,n),r=_t(s.year,0,s.dayOfYear);return this.year(r.getUTCFullYear()),this.month(r.getUTCMonth()),this.date(r.getUTCDate()),this}function yo(t){return null==t?Math.ceil((this.month()+1)/3):this.month(3*(t-1)+this.month()%3)}function go(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 bo(t,e){e[Vn]=U(1e3*("0."+t))}function _o(){return this._isUTC?"UTC":""}function wo(){return this._isUTC?"Coordinated Universal Time":""}function xo(t){return De(1e3*t)}function ko(){return De.apply(null,arguments).parseZone()}function Oo(t){return t}function Mo(t,e,i,o){var n=ne(),s=c().set(o,e);return n[i](s,t)}function So(t,e,i){if(h(t)&&(e=t,t=void 0),t=t||"",null!=e)return Mo(t,e,i,"month");var o,n=[];for(o=0;o<12;o++)n[o]=Mo(t,o,i,"month");return n}function Do(t,e,i,o){"boolean"==typeof t?(h(e)&&(i=e,e=void 0),e=e||""):(e=t,i=e,t=!1,h(e)&&(i=e,e=void 0),e=e||"");var n,s=ne(),r=t?s._week.dow:0,a=[];if(null!=i)return Mo(e,(i+r)%7,o,"day");for(n=0;n<7;n++)a[n]=Mo(e,(n+r)%7,o,"day");return a}function Eo(t,e){return So(t,e,"months")}function Co(t,e){return So(t,e,"monthsShort")}function To(t,e,i){return Do(t,e,i,"weekdays")}function Po(t,e,i){return Do(t,e,i,"weekdaysShort")}function No(t,e,i){return Do(t,e,i,"weekdaysMin")}function Io(){var t=this._data;return this._milliseconds=Hs(this._milliseconds),this._days=Hs(this._days),this._months=Hs(this._months),t.milliseconds=Hs(t.milliseconds),t.seconds=Hs(t.seconds),t.minutes=Hs(t.minutes),t.hours=Hs(t.hours),t.months=Hs(t.months),t.years=Hs(t.years),this}function Lo(t,e,i,o){var n=$e(e,i);return t._milliseconds+=o*n._milliseconds,t._days+=o*n._days,t._months+=o*n._months,t._bubble()}function Ao(t,e){return Lo(this,t,e,1)}function Ro(t,e){return Lo(this,t,e,-1)}function zo(t){return t<0?Math.floor(t):Math.ceil(t)}function jo(){var t,e,i,o,n,s=this._milliseconds,r=this._days,a=this._months,h=this._data;return s>=0&&r>=0&&a>=0||s<=0&&r<=0&&a<=0||(s+=864e5*zo(Bo(a)+r),r=0,a=0),h.milliseconds=s%1e3,t=G(s/1e3),h.seconds=t%60,e=G(t/60),h.minutes=e%60,i=G(e/60),h.hours=i%24,r+=G(i/24),n=G(Fo(r)),a+=n,r-=zo(Bo(n)),o=G(a/12),a%=12,h.days=r,h.months=a,h.years=o,this}function Fo(t){return 4800*t/146097}function Bo(t){return 146097*t/4800}function Ho(t){if(!this.isValid())return NaN;var e,i,o=this._milliseconds;if("month"===(t=B(t))||"quarter"===t||"year"===t)switch(e=this._days+o/864e5,i=this._months+Fo(e),t){case"month":return i;case"quarter":return i/3;case"year":return i/12}else switch(e=this._days+Math.round(Bo(this._months)),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 Yo(){return this.isValid()?this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*U(this._months/12):NaN}function Wo(t){return function(){return this.as(t)}}function Vo(){return $e(this)}function Go(t){return t=B(t),this.isValid()?this[t+"s"]():NaN}function Uo(t){return function(){return this.isValid()?this._data[t]:NaN}}function qo(){return G(this.days()/7)}function Xo(t,e,i,o,n){return n.relativeTime(e||1,!!i,t,o)}function Zo(t,e,i,o){var n=$e(t).abs(),s=nr(n.as("s")),r=nr(n.as("m")),a=nr(n.as("h")),h=nr(n.as("d")),d=nr(n.as("M")),l=nr(n.as("w")),u=nr(n.as("y")),c=s<=i.ss&&["s",s]||s0,c[4]=o,Xo.apply(null,c)}function Ko(t){return void 0===t?nr:"function"==typeof t&&(nr=t,!0)}function Jo(t,e){return void 0!==sr[t]&&(void 0===e?sr[t]:(sr[t]=e,"s"===t&&(sr.ss=e-1),!0))}function Qo(t,e){if(!this.isValid())return this.localeData().invalidDate();var i,o,n=!1,s=sr;return"object"==typeof t&&(e=t,t=!1),"boolean"==typeof t&&(n=t),"object"==typeof e&&(s=Object.assign({},sr,e),null!=e.s&&null==e.ss&&(s.ss=e.s-1)),i=this.localeData(),o=Zo(this,!n,s,i),n&&(o=i.pastFuture(+this,o)),i.postformat(o)}function $o(t){return(t>0)-(t<0)||+t}function tn(){if(!this.isValid())return this.localeData().invalidDate();var t,e,i,o,n,s,r,a,h=rr(this._milliseconds)/1e3,d=rr(this._days),l=rr(this._months),u=this.asSeconds();return u?(t=G(h/60),e=G(t/60),h%=60,t%=60,i=G(l/12),l%=12,o=h?h.toFixed(3).replace(/\.?0+$/,""):"",n=u<0?"-":"",s=$o(this._months)!==$o(u)?"-":"",r=$o(this._days)!==$o(u)?"-":"",a=$o(this._milliseconds)!==$o(u)?"-":"",n+"P"+(i?s+i+"Y":"")+(l?s+l+"M":"")+(d?r+d+"D":"")+(e||t||h?"T":"")+(e?a+e+"H":"")+(t?a+t+"M":"")+(h?a+o+"S":"")):"P0D"}var en,on;on=Array.prototype.some?Array.prototype.some:function(t){var e,i=Object(this),o=i.length>>>0;for(e=0;e68?1900:2e3)};var Qn=q("FullYear",!0);C("w",["ww",2],"wo","week"),C("W",["WW",2],"Wo","isoWeek"),F("week","w"),F("isoWeek","W"),Y("week",5),Y("isoWeek",5),Q("w",On),Q("ww",On,_n),Q("W",On),Q("WW",On,_n),ot(["w","ww","W","WW"],function(t,e,i,o){e[o.substr(0,1)]=U(t)});var $n={dow:0,doy:6};C("d",0,"do","day"),C("dd",0,0,function(t){return this.localeData().weekdaysMin(this,t)}),C("ddd",0,0,function(t){return this.localeData().weekdaysShort(this,t)}),C("dddd",0,0,function(t){return this.localeData().weekdays(this,t)}),C("e",0,0,"weekday"),C("E",0,0,"isoWeekday"),F("day","d"),F("weekday","e"),F("isoWeekday","E"),Y("day",11),Y("weekday",11),Y("isoWeekday",11),Q("d",On),Q("e",On),Q("E",On),Q("dd",function(t,e){return e.weekdaysMinRegex(t)}),Q("ddd",function(t,e){return e.weekdaysShortRegex(t)}),Q("dddd",function(t,e){return e.weekdaysRegex(t)}),ot(["dd","ddd","dddd"],function(t,e,i,o){var n=i._locale.weekdaysParse(t,o,i._strict);null!=n?e.d=n:f(i).invalidWeekday=t}),ot(["d","e","E"],function(t,e,i,o){e[o]=U(t)});var ts="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),es="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),is="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),os=An,ns=An,ss=An;C("H",["HH",2],0,"hour"),C("h",["hh",2],0,Gt),C("k",["kk",2],0,Ut),C("hmm",0,0,function(){return""+Gt.apply(this)+E(this.minutes(),2)}),C("hmmss",0,0,function(){return""+Gt.apply(this)+E(this.minutes(),2)+E(this.seconds(),2)}),C("Hmm",0,0,function(){return""+this.hours()+E(this.minutes(),2)}),C("Hmmss",0,0,function(){return""+this.hours()+E(this.minutes(),2)+E(this.seconds(),2)}),qt("a",!0),qt("A",!1),F("hour","h"),Y("hour",13),Q("a",Xt),Q("A",Xt),Q("H",On),Q("h",On),Q("k",On),Q("HH",On,_n),Q("hh",On,_n),Q("kk",On,_n),Q("hmm",Mn),Q("hmmss",Sn),Q("Hmm",Mn),Q("Hmmss",Sn),it(["H","HH"],Hn),it(["k","kk"],function(t,e,i){var o=U(t);e[Hn]=24===o?0:o}),it(["a","A"],function(t,e,i){i._isPm=i._locale.isPM(t),i._meridiem=t}),it(["h","hh"],function(t,e,i){e[Hn]=U(t),f(i).bigHour=!0}),it("hmm",function(t,e,i){var o=t.length-2;e[Hn]=U(t.substr(0,o)),e[Yn]=U(t.substr(o)),f(i).bigHour=!0}),it("hmmss",function(t,e,i){var o=t.length-4,n=t.length-2;e[Hn]=U(t.substr(0,o)),e[Yn]=U(t.substr(o,2)),e[Wn]=U(t.substr(n)),f(i).bigHour=!0}),it("Hmm",function(t,e,i){var o=t.length-2;e[Hn]=U(t.substr(0,o)),e[Yn]=U(t.substr(o))}),it("Hmmss",function(t,e,i){var o=t.length-4,n=t.length-2;e[Hn]=U(t.substr(0,o)),e[Yn]=U(t.substr(o,2)),e[Wn]=U(t.substr(n))});var rs,as=/[ap]\.?m?\.?/i,hs=q("Hours",!0),ds={calendar:dn,longDateFormat:fn,invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:mn,relativeTime:vn,months:qn, -monthsShort:Xn,week:$n,weekdays:ts,weekdaysMin:is,weekdaysShort:es,meridiemParse:as},ls={},us={},cs=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,ps=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,fs=/Z|[+-]\d\d(?::?\d\d)?/,ms=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/],["YYYYMM",/\d{6}/,!1],["YYYY",/\d{4}/,!1]],vs=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],ys=/^\/?Date\((-?\d+)/i,gs=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,bs={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};e.createFromInputFallback=w("value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.",function(t){t._d=new Date(t._i+(t._useUTC?" UTC":""))}),e.ISO_8601=function(){},e.RFC_2822=function(){};var _s=w("moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/",function(){var t=De.apply(null,arguments);return this.isValid()&&t.isValid()?tthis?this:t:v()}),xs=function(){return Date.now?Date.now():+new Date},ks=["year","quarter","month","week","day","hour","minute","second","millisecond"];je("Z",":"),je("ZZ",""),Q("Z",In),Q("ZZ",In),it(["Z","ZZ"],function(t,e,i){i._useUTC=!0,i._tzm=Fe(In,t)});var Os=/([\+\-]|\d\d)/gi;e.updateOffset=function(){};var Ms=/^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/,Ss=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;$e.fn=Le.prototype,$e.invalid=Ie;var Ds=oi(1,"add"),Es=oi(-1,"subtract");e.defaultFormat="YYYY-MM-DDTHH:mm:ssZ",e.defaultFormatUtc="YYYY-MM-DDTHH:mm:ss[Z]";var Cs=w("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)}),Ts=1e3,Ps=60*Ts,Ns=60*Ps,Is=3506328*Ns;C("N",0,0,"eraAbbr"),C("NN",0,0,"eraAbbr"),C("NNN",0,0,"eraAbbr"),C("NNNN",0,0,"eraName"),C("NNNNN",0,0,"eraNarrow"),C("y",["y",1],"yo","eraYear"),C("y",["yy",2],0,"eraYear"),C("y",["yyy",3],0,"eraYear"),C("y",["yyyy",4],0,"eraYear"),Q("N",io),Q("NN",io),Q("NNN",io),Q("NNNN",oo),Q("NNNNN",no),it(["N","NN","NNN","NNNN","NNNNN"],function(t,e,i,o){var n=i._locale.erasParse(t,o,i._strict);n?f(i).era=n:f(i).invalidEra=t}),Q("y",Tn),Q("yy",Tn),Q("yyy",Tn),Q("yyyy",Tn),Q("yo",so),it(["y","yy","yyy","yyyy"],jn),it(["yo"],function(t,e,i,o){var n;i._locale._eraYearOrdinalRegex&&(n=t.match(i._locale._eraYearOrdinalRegex)),i._locale.eraYearOrdinalParse?e[jn]=i._locale.eraYearOrdinalParse(t,n):e[jn]=parseInt(t,10)}),C(0,["gg",2],0,function(){return this.weekYear()%100}),C(0,["GG",2],0,function(){return this.isoWeekYear()%100}),ao("gggg","weekYear"),ao("ggggg","weekYear"),ao("GGGG","isoWeekYear"),ao("GGGGG","isoWeekYear"),F("weekYear","gg"),F("isoWeekYear","GG"),Y("weekYear",1),Y("isoWeekYear",1),Q("G",Pn),Q("g",Pn),Q("GG",On,_n),Q("gg",On,_n),Q("GGGG",En,xn),Q("gggg",En,xn),Q("GGGGG",Cn,kn),Q("ggggg",Cn,kn),ot(["gggg","ggggg","GGGG","GGGGG"],function(t,e,i,o){e[o.substr(0,2)]=U(t)}),ot(["gg","GG"],function(t,i,o,n){i[n]=e.parseTwoDigitYear(t)}),C("Q",0,"Qo","quarter"),F("quarter","Q"),Y("quarter",7),Q("Q",bn),it("Q",function(t,e){e[Fn]=3*(U(t)-1)}),C("D",["DD",2],"Do","date"),F("date","D"),Y("date",9),Q("D",On),Q("DD",On,_n),Q("Do",function(t,e){return t?e._dayOfMonthOrdinalParse||e._ordinalParse:e._dayOfMonthOrdinalParseLenient}),it(["D","DD"],Bn),it("Do",function(t,e){e[Bn]=U(t.match(On)[0])});var Ls=q("Date",!0);C("DDD",["DDDD",3],"DDDo","dayOfYear"),F("dayOfYear","DDD"),Y("dayOfYear",4),Q("DDD",Dn),Q("DDDD",wn),it(["DDD","DDDD"],function(t,e,i){i._dayOfYear=U(t)}),C("m",["mm",2],0,"minute"),F("minute","m"),Y("minute",14),Q("m",On),Q("mm",On,_n),it(["m","mm"],Yn);var As=q("Minutes",!1);C("s",["ss",2],0,"second"),F("second","s"),Y("second",15),Q("s",On),Q("ss",On,_n),it(["s","ss"],Wn);var Rs=q("Seconds",!1);C("S",0,0,function(){return~~(this.millisecond()/100)}),C(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),C(0,["SSS",3],0,"millisecond"),C(0,["SSSS",4],0,function(){return 10*this.millisecond()}),C(0,["SSSSS",5],0,function(){return 100*this.millisecond()}),C(0,["SSSSSS",6],0,function(){return 1e3*this.millisecond()}),C(0,["SSSSSSS",7],0,function(){return 1e4*this.millisecond()}),C(0,["SSSSSSSS",8],0,function(){return 1e5*this.millisecond()}),C(0,["SSSSSSSSS",9],0,function(){return 1e6*this.millisecond()}),F("millisecond","ms"),Y("millisecond",16),Q("S",Dn,bn),Q("SS",Dn,_n),Q("SSS",Dn,wn);var zs,js;for(zs="SSSS";zs.length<=9;zs+="S")Q(zs,Tn);for(zs="S";zs.length<=9;zs+="S")it(zs,bo);js=q("Milliseconds",!1),C("z",0,0,"zoneAbbr"),C("zz",0,0,"zoneName");var Fs=g.prototype;Fs.add=Ds,Fs.calendar=ui,Fs.clone=ci,Fs.diff=bi,Fs.endOf=Ai,Fs.format=Oi,Fs.from=Mi,Fs.fromNow=Si,Fs.to=Di,Fs.toNow=Ei,Fs.get=K,Fs.invalidAt=Vi,Fs.isAfter=pi,Fs.isBefore=fi,Fs.isBetween=mi,Fs.isSame=vi,Fs.isSameOrAfter=yi,Fs.isSameOrBefore=gi,Fs.isValid=Yi,Fs.lang=Cs,Fs.locale=Ci,Fs.localeData=Ti,Fs.max=ws,Fs.min=_s,Fs.parsingFlags=Wi,Fs.set=J,Fs.startOf=Li,Fs.subtract=Es,Fs.toArray=Fi,Fs.toObject=Bi,Fs.toDate=ji,Fs.toISOString=xi,Fs.inspect=ki,"undefined"!=typeof Symbol&&null!=Symbol.for&&(Fs[Symbol.for("nodejs.util.inspect.custom")]=function(){return"Moment<"+this.format()+">"}),Fs.toJSON=Hi,Fs.toString=wi,Fs.unix=zi,Fs.valueOf=Ri,Fs.creationData=Gi,Fs.eraName=Zi,Fs.eraNarrow=Ki,Fs.eraAbbr=Ji,Fs.eraYear=Qi,Fs.year=Qn,Fs.isLeapYear=gt,Fs.weekYear=ho,Fs.isoWeekYear=lo,Fs.quarter=Fs.quarters=yo,Fs.month=ct,Fs.daysInMonth=pt,Fs.week=Fs.weeks=Et,Fs.isoWeek=Fs.isoWeeks=Ct,Fs.weeksInYear=po,Fs.weeksInWeekYear=fo,Fs.isoWeeksInYear=uo,Fs.isoWeeksInISOWeekYear=co,Fs.date=Ls,Fs.day=Fs.days=jt,Fs.weekday=Ft,Fs.isoWeekday=Bt,Fs.dayOfYear=go,Fs.hour=Fs.hours=hs,Fs.minute=Fs.minutes=As,Fs.second=Fs.seconds=Rs,Fs.millisecond=Fs.milliseconds=js,Fs.utcOffset=Ye,Fs.utc=Ve,Fs.local=Ge,Fs.parseZone=Ue,Fs.hasAlignedHourOffset=qe,Fs.isDST=Xe,Fs.isLocal=Ke,Fs.isUtcOffset=Je,Fs.isUtc=Qe,Fs.isUTC=Qe,Fs.zoneAbbr=_o,Fs.zoneName=wo,Fs.dates=w("dates accessor is deprecated. Use date instead.",Ls),Fs.months=w("months accessor is deprecated. Use month instead",ct),Fs.years=w("years accessor is deprecated. Use year instead",Qn),Fs.zone=w("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",We),Fs.isDSTShifted=w("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",Ze);var Bs=S.prototype;Bs.calendar=D,Bs.longDateFormat=L,Bs.invalidDate=A,Bs.ordinal=R,Bs.preparse=Oo,Bs.postformat=Oo,Bs.relativeTime=z,Bs.pastFuture=j,Bs.set=O,Bs.eras=Ui,Bs.erasParse=qi,Bs.erasConvertYear=Xi,Bs.erasAbbrRegex=to,Bs.erasNameRegex=$i,Bs.erasNarrowRegex=eo,Bs.months=at,Bs.monthsShort=ht,Bs.monthsParse=lt,Bs.monthsRegex=mt,Bs.monthsShortRegex=ft,Bs.week=Mt,Bs.firstDayOfYear=Dt,Bs.firstDayOfWeek=St,Bs.weekdays=It,Bs.weekdaysMin=At,Bs.weekdaysShort=Lt,Bs.weekdaysParse=zt,Bs.weekdaysRegex=Ht,Bs.weekdaysShortRegex=Yt,Bs.weekdaysMinRegex=Wt,Bs.isPM=Zt,Bs.meridiem=Kt,ee("en",{eras:[{since:"0001-01-01",until:1/0,offset:1,name:"Anno Domini",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"Before Christ",narrow:"BC",abbr:"BC"}],dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(t){var e=t%10;return t+(1===U(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th")}}),e.lang=w("moment.lang is deprecated. Use moment.locale instead.",ee),e.langData=w("moment.langData is deprecated. Use moment.localeData instead.",ne);var Hs=Math.abs,Ys=Wo("ms"),Ws=Wo("s"),Vs=Wo("m"),Gs=Wo("h"),Us=Wo("d"),qs=Wo("w"),Xs=Wo("M"),Zs=Wo("Q"),Ks=Wo("y"),Js=Uo("milliseconds"),Qs=Uo("seconds"),$s=Uo("minutes"),tr=Uo("hours"),er=Uo("days"),ir=Uo("months"),or=Uo("years"),nr=Math.round,sr={ss:44,s:45,m:45,h:22,d:26,w:null,M:11},rr=Math.abs,ar=Le.prototype;return ar.isValid=Ne,ar.abs=Io,ar.add=Ao,ar.subtract=Ro,ar.as=Ho,ar.asMilliseconds=Ys,ar.asSeconds=Ws,ar.asMinutes=Vs,ar.asHours=Gs,ar.asDays=Us,ar.asWeeks=qs,ar.asMonths=Xs,ar.asQuarters=Zs,ar.asYears=Ks,ar.valueOf=Yo,ar._bubble=jo,ar.clone=Vo,ar.get=Go,ar.milliseconds=Js,ar.seconds=Qs,ar.minutes=$s,ar.hours=tr,ar.days=er,ar.weeks=qo,ar.months=ir,ar.years=or,ar.humanize=Qo,ar.toISOString=tn,ar.toString=tn,ar.toJSON=tn,ar.locale=Ci,ar.localeData=Ti,ar.toIsoString=w("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",tn),ar.lang=Cs,C("X",0,0,"unix"),C("x",0,0,"valueOf"),Q("x",Pn),Q("X",Ln),it("X",function(t,e,i){i._d=new Date(1e3*parseFloat(t))}),it("x",function(t,e,i){i._d=new Date(U(t))}),e.version="2.29.1",function(t){en=t}(De),e.fn=Fs,e.min=Ce,e.max=Te,e.now=xs,e.utc=c,e.unix=xo,e.months=Eo,e.isDate=d,e.locale=ee,e.invalid=v,e.duration=$e,e.isMoment=b,e.weekdays=To,e.parseZone=ko,e.localeData=ne,e.isDuration=Ae,e.monthsShort=Co,e.weekdaysMin=No,e.defineLocale=ie,e.updateLocale=oe,e.locales=se,e.weekdaysShort=Po,e.normalizeUnits=B,e.relativeTimeRounding=Ko,e.relativeTimeThreshold=Jo,e.calendarFormat=li,e.prototype=Fs,e.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"},e})}).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){n<16&&(e[o+n++]=u[t])});n<16;)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:y+1,d=a-v+(h-y)/1e4;if(d<0&&void 0===t.clockseq&&(r=r+1&16383),(d<0||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,y=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;p<6;p++)s[n+p]=c[p];return 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;a<16;a++)e[n+a]=s[a];return e||o(s)}var r,a="undefined"!=typeof window?window:void 0!==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;e<16;e++)0==(3&e)&&(t=4294967296*Math.random()),d[e]=t>>>((3&e)<<3)&255;return d}}for(var l=[],u={},c=0;c<256;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,y=0,g=s;g.v1=n,g.v4=s,g.parse=i,g.unparse=o,t.exports=g}).call(e,function(){return this}())},function(t,e,i){function o(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",i=e.split(";"),o=i.find(function(e){return e.match(t+":")})||"",n=o.indexOf(":");return o.substr(n+1).trim()}function n(t){return d.ARROW.calculateSize(t)}function s(t){return 2*n(t).height+(d.CROSS.size+2*d.CROSS.margin)}function r(t,e,i,o){if(i<=o)return t-i/2;var n=e-i+o/2,s=e-o/2;return ts?s:t}function a(t){var i=t.x,o=t.y,n=t.JSONcontainer,s=t.svgContainer,r=t.props,a=t.groupTemplate,l=e.getSVGElement("g",n,s);l.setAttribute("transform","translate("+(i-a.size)+", "+(o-a.size)+") rotate("+d.PARTOGRAM_HEAD_POSITION_DEGREE[r.partogramPosition]+", "+a.size+", "+a.size+")"),a.styles&&l.setAttribute("style",a.styles);var u=e.getSVGElement("circle",n,s);if(u.setAttribute("cx",a.size),u.setAttribute("cy",a.size),u.setAttribute("r",.9*a.size),l.append(u),"IND"!==r.partogramPosition){var c=e.getSVGElement("line",n,s);h(c,a,{y1:.716764966,y2:1.9});var p=e.getSVGElement("line",n,s);h(p,a,{x1:1.6,y1:.758382483,y2:.3,transform:"translate("+1.3*a.size+", "+.5083825*a.size+") scale(-1, 1) translate("+-1.3*a.size+", "+-.5083825*a.size+")"});var f=e.getSVGElement("line",n,s);h(f,a,{y1:.779191242,x2:.4,y2:.3}),l.append(c),l.append(p),l.append(f)}return l}function h(t,e,i){var o=i.x1,n=void 0===o?1:o,s=i.y1,r=void 0===s?1:s,a=i.x2,h=void 0===a?1:a,d=i.y2,l=void 0===d?1:d,u=i.transform;t.setAttribute("x1",e.size*n),t.setAttribute("y1",e.size*r),t.setAttribute("x2",e.size*h),t.setAttribute("y2",e.size*l),u&&t.setAttribute("transform",u)}var d=i(8);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,h,l,u,c,p){var f=[],m={x:t-.5*h.size,y:i-.5*h.size};switch(h.style){case"circle":if(!isNaN(i)&&!isNaN(t)){var v=e.getSVGElement("circle",l,u);v.setAttributeNS(null,"cx",t),v.setAttributeNS(null,"cy",i),v.setAttributeNS(null,"r",.5*h.size),f.push(v)}break;case"square":if(!isNaN(i)&&!isNaN(t)){var y=e.getSVGElement("rect",l,u);y.setAttributeNS(null,"x",t-.5*h.size),y.setAttributeNS(null,"y",i-.5*h.size),y.setAttributeNS(null,"width",h.size),y.setAttributeNS(null,"height",h.size),f.push(y)}break;case"triangle-up":if(!isNaN(m.y)&&!isNaN(m.x)){var g=e.getSVGElement("polygon",l,u);g.setAttributeNS(null,"points",m.x-2+","+(m.y+h.size)+" "+(m.x+h.size+2)+","+(m.y+h.size)+" "+(m.x+.5*h.size)+","+m.y),f.push(g)}break;case"triangle-down":if(!isNaN(m.y)&&!isNaN(m.x)){var b=e.getSVGElement("polygon",l,u);b.setAttributeNS(null,"points",m.x-2+","+m.y+" "+(m.x+h.size+2)+","+m.y+" "+(m.x+.5*h.size)+","+(m.y+h.size)),f.push(b)}break;case"arrow-avg":var _=p.baseY,w=p.baseHeight,x=p.size,k=void 0===x?0:x,O=h.styles,M=h.size,S=n(M),D=d.CROSS.size/2,E=Number(o("stroke-width",O).replace("px","")),C=E/2,T=k,P=s(M),N=(Tn?1:or)&&(s=h,r=d)}return s},o.prototype.min=function(t){var e,i,o=this._data,n=Object.keys(o),s=null,r=null;for(e=0,i=n.length;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(9);o.prototype.setData=function(t){var e,i,o,n;if(this._data&&(this._data.off&&this._data.off("*",this.listener),e=Object.keys(this._ids),this._ids={},this.length=0,this._trigger("remove",{items:e})),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}),o=0,n=e.length;o3&&(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.max0?this.yMin:this.yMax,n=this._convert3Dto2D(new u(w,r,this.zMin)),Math.cos(2*_)>0?(m.textAlign="center",m.textBaseline="top",n.y+=b):Math.sin(2*_)<0?(m.textAlign="right",m.textBaseline="middle"):(m.textAlign="left",m.textBaseline="middle"),m.fillStyle=this.axisColor,m.fillText(" "+this.xValueLabel(i.getCurrent())+" ",n.x,n.y),i.next()}for(m.lineWidth=1,o=void 0===this.defaultYStep,i=new v(this.yMin,this.yMax,this.yStep,o),i.start(),i.getCurrent()0?this.xMin:this.xMax,n=this._convert3Dto2D(new u(s,i.getCurrent(),this.zMin)),Math.cos(2*_)<0?(m.textAlign="center",m.textBaseline="top",n.y+=b):Math.sin(2*_)>0?(m.textAlign="right",m.textBaseline="middle"):(m.textAlign="left",m.textBaseline="middle"),m.fillStyle=this.axisColor,m.fillText(" "+this.yValueLabel(i.getCurrent())+" ",n.x,n.y),i.next();for(m.lineWidth=1,o=void 0===this.defaultZStep,i=new v(this.zMin,this.zMax,this.zStep,o),i.start(),i.getCurrent()0?this.xMin:this.xMax,r=Math.sin(_)<0?this.yMin:this.yMax;!i.end();)t=this._convert3Dto2D(new u(s,r,i.getCurrent())),m.strokeStyle=this.axisColor,m.beginPath(),m.moveTo(t.x,t.y),m.lineTo(t.x-b,t.y),m.stroke(),m.textAlign="right",m.textBaseline="middle",m.fillStyle=this.axisColor,m.fillText(this.zValueLabel(i.getCurrent())+" ",t.x-5,t.y),i.next();m.lineWidth=1,t=this._convert3Dto2D(new u(s,r,this.zMin)),e=this._convert3Dto2D(new u(s,r,this.zMax)),m.strokeStyle=this.axisColor,m.beginPath(),m.moveTo(t.x,t.y),m.lineTo(e.x,e.y),m.stroke(),m.lineWidth=1,c=this._convert3Dto2D(new u(this.xMin,this.yMin,this.zMin)),p=this._convert3Dto2D(new u(this.xMax,this.yMin,this.zMin)),m.strokeStyle=this.axisColor,m.beginPath(),m.moveTo(c.x,c.y),m.lineTo(p.x,p.y),m.stroke(),c=this._convert3Dto2D(new u(this.xMin,this.yMax,this.zMin)),p=this._convert3Dto2D(new u(this.xMax,this.yMax,this.zMin)),m.strokeStyle=this.axisColor,m.beginPath(),m.moveTo(c.x,c.y),m.lineTo(p.x,p.y),m.stroke(),m.lineWidth=1,t=this._convert3Dto2D(new u(this.xMin,this.yMin,this.zMin)),e=this._convert3Dto2D(new u(this.xMin,this.yMax,this.zMin)),m.strokeStyle=this.axisColor,m.beginPath(),m.moveTo(t.x,t.y),m.lineTo(e.x,e.y),m.stroke(),t=this._convert3Dto2D(new u(this.xMax,this.yMin,this.zMin)),e=this._convert3Dto2D(new u(this.xMax,this.yMax,this.zMin)),m.strokeStyle=this.axisColor,m.beginPath(),m.moveTo(t.x,t.y),m.lineTo(e.x,e.y),m.stroke();var x=this.xLabel;x.length>0&&(l=.1/this.scale.y,s=(this.xMin+this.xMax)/2,r=Math.cos(_)>0?this.yMin-l:this.yMax+l,n=this._convert3Dto2D(new u(s,r,this.zMin)),Math.cos(2*_)>0?(m.textAlign="center",m.textBaseline="top"):Math.sin(2*_)<0?(m.textAlign="right",m.textBaseline="middle"):(m.textAlign="left",m.textBaseline="middle"),m.fillStyle=this.axisColor,m.fillText(x,n.x,n.y));var k=this.yLabel;k.length>0&&(d=.1/this.scale.x,s=Math.sin(_)>0?this.xMin-d:this.xMax+d,r=(this.yMin+this.yMax)/2,n=this._convert3Dto2D(new u(s,r,this.zMin)),Math.cos(2*_)<0?(m.textAlign="center",m.textBaseline="top"):Math.sin(2*_)>0?(m.textAlign="right",m.textBaseline="middle"):(m.textAlign="left",m.textBaseline="middle"),m.fillStyle=this.axisColor,m.fillText(k,n.x,n.y));var O=this.zLabel;O.length>0&&(h=30,s=Math.cos(_)>0?this.xMin:this.xMax,r=Math.sin(_)<0?this.yMin:this.yMax,a=(this.zMin+this.zMax)/2,n=this._convert3Dto2D(new u(s,r,a)),m.textAlign="right",m.textBaseline="middle",m.fillStyle=this.axisColor,m.fillText(O,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,l,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),l=1,this.showShadow?(c=Math.min(1+x.x/k/2,1),a=this._hsv2rgb(d,l,c),h=a):(c=1,a=this._hsv2rgb(d,l,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;s0){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:t<0?-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=null,s=null,r=null,a=new c(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--){n=this.dataPoints[i];var h=n.surfaces;if(h)for(var d=h.length-1;d>=0;d--){var l=h[d],u=l.corners,p=[u[0].screen,u[1].screen,u[2].screen],f=[u[2].screen,u[3].screen,u[0].screen];if(this._insideTriangle(a,p)||this._insideTriangle(a,f))return n}}else for(i=0;i"+this.xLabel+":"+t.point.x+""+this.yLabel+":"+t.point.y+""+this.zLabel+":"+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){if(t)return o(t)}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;n.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:t0&&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(11);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(){if(void 0!==this.index)return 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(!(tthis.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;return t/(this.values.length-1)*e+3},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||0,this._end=e||0,this.setStep(i,o)},i.prototype.setStep=function(t,e){void 0===t||t<=0||(void 0!==e&&(this.prettyStep=e),!0===this.prettyStep?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),s<=0&&(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){return t&&t.__esModule?t:{default:t}}function n(t,e,i,o){if(!(this instanceof n))throw new SyntaxError("Constructor must be called with the new operator");if(!(Array.isArray(i)||i instanceof u||i instanceof c)&&i instanceof Object){var s=o;o=i,i=s}var r=this;this.defaultOptions={start:null,end:null,autoResize:!0,throttleRedraw:0,orientation:{axis:"bottom",item:"bottom"},moment:d,width:null,height:null,maxHeight:null,minHeight:null},this.options=l.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 r.timeAxis.step.scale},getStep:function(){return r.timeAxis.step.step},toScreen:r._toScreen.bind(r),toGlobalScreen:r._toGlobalScreen.bind(r),toTime:r._toTime.bind(r),toGlobalTime:r._toGlobalTime.bind(r)}},this.range=new p(this.body),this.components.push(this.range),this.body.range=this.range,this.timeAxis=new m(this.body),this.timeAxis2=null,this.components.push(this.timeAxis),this.currentTime=new v(this.body),this.components.push(this.currentTime),this.itemSet=new g(this.body),this.components.push(this.itemSet),this.itemsData=null,this.groupsData=null,this.on("tap",function(t){r.emit("click",r.getEventProperties(t))}),this.on("doubletap",function(t){r.emit("doubleClick",r.getEventProperties(t))}),this.dom.root.oncontextmenu=function(t){r.emit("contextmenu",r.getEventProperties(t))};var a=null;this.dom.root.onmousemove=function(t){var e=r.getEventProperties(t),i=e.group;if(e.data={id:i},a!=i){if(a){var o=_.clone(e);o.data={id:a},r.emit("linemouseout",o)}i&&(a=i,r.emit("linemouseenter",e))}},this.dom.root.onmouseleave=function(t){var e=r.getEventProperties(t);e.data={id:a},a=null,r.emit("linemouseout",e)},this.fitDone=!1,this.on("changed",function(){if(null!=this.itemsData&&!r.fitDone)if(r.fitDone=!0,void 0!=r.options.start||void 0!=r.options.end){if(void 0==r.options.start||void 0==r.options.end)var t=r.getItemRange();var e=void 0!=r.options.start?r.options.start:t.min,i=void 0!=r.options.end?r.options.end:t.max;r.setWindow(e,i,{animation:!1})}else r.fit({animation:!1})}),o&&this.setOptions(o),i&&this.setGroups(i),e&&this.setItems(e),this._redraw()}var s=i(21),r=o(s),a=i(27),h=o(a),d=(i(13),i(23),i(2)),l=i(1),u=i(9),c=i(11),p=i(28),f=i(31),m=i(32),v=i(38),y=i(36),g=i(39),b=i(27).printStyle,w=i(48).allOptions,x=i(48).configureOptions;n.prototype=new f,n.prototype._createConfigurator=function(){return new r.default(this,this.dom.container,x)},n.prototype.redraw=function(){this.itemSet&&this.itemSet.markDirty({refreshItems:!0}),this._redraw()},n.prototype.setOptions=function(t){if(!0===h.default.validate(t,w)&&console.log("%cErrors have been found in the supplied options object.",b),f.prototype.setOptions.call(this,t),"type"in t&&t.type!==this.options.type){this.options.type=t.type;var e=this.itemsData;if(e){var i=this.getSelection();this.setItems(null),this.setItems(e),this.setSelection(i)}}},n.prototype.setItems=function(t){var e;e=t?t instanceof u||t instanceof c?t:new u(t,{type:{start:"Date",end:"Date"}}):null,this.itemsData=e,this.itemSet&&this.itemSet.setItems(e)},n.prototype.setGroups=function(t){var e;e=t?t instanceof u||t instanceof c?t:new u(t):null,this.groupsData=e,this.itemSet.setGroups(e)},n.prototype.setData=function(t){t&&t.groups&&this.setGroups(t.groups),t&&t.items&&this.setItems(t.items)},n.prototype.setSelection=function(t,e){this.itemSet&&this.itemSet.setSelection(t),e&&e.focus&&this.focus(t,e)},n.prototype.getSelection=function(){return this.itemSet&&this.itemSet.getSelection()||[]},n.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||es)&&(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;this.range.setRange(r-a/2,r+a/2,h)}}},n.prototype.fit=function(t){var e=!t||void 0===t.animation||t.animation,i=this.getItemRange();this.range.setRange(i.min,i.max,e)},n.prototype.getItemRange=function(){var t=this.getDataRange(),e=null!==t.min?t.min.valueOf():null,i=null!==t.max?t.max.valueOf():null,o=null,n=null;if(null!=e&&null!=i){var s=function(t){return l.convert(t.data.start,"Date").valueOf()},r=function(t){var e=void 0!=t.data.end?t.data.end:t.data.start;return l.convert(e,"Date").valueOf()},a=i-e;a<=0&&(a=10);var h=a/this.props.center.width;if(l.forEach(this.itemSet.items,function(t){t.show(),t.repositionX();var a=s(t),d=r(t),l=a-(t.getWidthLeft()+10)*h,u=d+(t.getWidthRight()+10)*h;li&&(i=u,n=t)}.bind(this)),o&&n){var d=o.getWidthLeft()+10,u=n.getWidthRight()+10,c=this.props.center.width-d-u;c>0&&(e=s(o)-d*a/c,i=r(n)+u*a/c)}}return{min:null!=e?new Date(e):null,max:null!=i?new Date(i):null}},n.prototype.getDataRange=function(){var t=null,e=null,i=this.itemsData&&this.itemsData.getDataSet();return i&&i.forEach(function(i){var o=l.convert(i.start,"Date").valueOf(),n=l.convert(void 0!=i.end?i.end:i.start,"Date").valueOf();(null===t||oe)&&(e=n)}),{min:null!=t?new Date(t):null,max:null!=e?new Date(e):null}},n.prototype.getEventProperties=function(t){var e=t.center?t.center.x:t.clientX,i=t.center?t.center.y:t.clientY,o=this.dom.centerContainer.getBoundingClientRect(),n=e-o.left,s=i-o.top,r=this.itemSet.itemFromTarget(t),a=this.itemSet.groupFromTarget(t),h=y.customTimeFromTarget(t),d=this.itemSet.options.snap||null,u=this.body.util.getScale(),c=this.body.util.getStep(),p=this._toTime(n),f=d?d(p,u,c):p,m=l.getTarget(t),v=null;return null!=r?v="item":null!=h?v="custom-time":l.hasParent(m,this.timeAxis.dom.foreground)?v="axis":this.timeAxis2&&l.hasParent(m,this.timeAxis2.dom.foreground)?v="axis":l.hasParent(m,this.itemSet.dom.labelSet)?v="group-label":l.hasParent(m,this.currentTime.bar)?v="current-time":l.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:n,y:s,time:p,snappedTime:f}},n.prototype.setColumnCount=function(t){this.body&&this.body.range&&(this.body.range.props=_.merge(this.body.range.props,{columnCount:t}))},t.exports=n},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"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},s=function(){function t(t,e){for(var i=0;i3&&void 0!==arguments[3]?arguments[3]:1;o(this,t),this.parent=e,this.changedOptions=[],this.container=i,this.allowCreation=!1,this.options={},this.initialized=!1,this.popupCounter=0,this.defaultOptions={enabled:!1,filter:!0,container:void 0,showButton:!0},h.extend(this.options,this.defaultOptions),this.configureOptions=n,this.moduleOptions={},this.domElements=[],this.popupDiv={},this.popupLimit=5,this.popupHistory={},this.colorPicker=new a.default(s),this.wrapper=void 0}return s(t,[{key:"setOptions",value:function(t){if(void 0!==t){this.popupHistory={},this._removePopup();var e=!0;"string"==typeof t?this.options.filter=t:t instanceof Array?this.options.filter=t.join():"object"===(void 0===t?"undefined":n(t))?(void 0!==t.container&&(this.options.container=t.container),void 0!==t.filter&&(this.options.filter=t.filter),void 0!==t.showButton&&(this.options.showButton=t.showButton),void 0!==t.enabled&&(e=t.enabled)):"boolean"==typeof t?(this.options.filter=!0,e=t):"function"==typeof t&&(this.options.filter=t,e=!0),!1===this.options.filter&&(e=!1),this.options.enabled=e}this._clean()}},{key:"setModuleOptions",value:function(t){this.moduleOptions=t,!0===this.options.enabled&&(this._clean(),void 0!==this.options.container&&(this.container=this.options.container),this._create())}},{key:"_create",value:function(){var t=this;this._clean(),this.changedOptions=[];var e=this.options.filter,i=0,o=!1;for(var n in this.configureOptions)this.configureOptions.hasOwnProperty(n)&&(this.allowCreation=!1,o=!1,"function"==typeof e?(o=e(n,[]),o=o||this._handleObject(this.configureOptions[n],[n],!0)):!0!==e&&-1===e.indexOf(n)||(o=!0),!1!==o&&(this.allowCreation=!0,i>0&&this._makeItem([]),this._makeHeader(n),this._handleObject(this.configureOptions[n],[n])),i++);if(!0===this.options.showButton){var s=document.createElement("div");s.className="vis-configuration vis-config-button",s.innerText="generate options",s.onclick=function(){t._printOptions()},s.onmouseover=function(){s.className="vis-configuration vis-config-button hover"},s.onmouseout=function(){s.className="vis-configuration vis-config-button"},this.optionsContainer=document.createElement("div"),this.optionsContainer.className="vis-configuration vis-config-option-container",this.domElements.push(this.optionsContainer),this.domElements.push(s)}this._push()}},{key:"_push",value:function(){this.wrapper=document.createElement("div"),this.wrapper.className="vis-configuration-wrapper",this.container.appendChild(this.wrapper);for(var t=0;t1?i-1:0),n=1;n2&&void 0!==arguments[2]&&arguments[2],o=document.createElement("div");return o.className="vis-configuration vis-config-label vis-config-s"+e.length,o.innerHTML=!0===i?""+t+":":t+":",o}},{key:"_makeDropdown",value:function(t,e,i){var o=document.createElement("select");o.className="vis-configuration vis-config-select";var n=0;void 0!==e&&-1!==t.indexOf(e)&&(n=t.indexOf(e));for(var s=0;ss&&1!==s&&(a.max=Math.ceil(1.2*e),d=a.max,h="range increased"),a.value=e}else a.value=o;var l=document.createElement("input");l.className="vis-configuration vis-config-rangeinput",l.value=a.value;var u=this;a.onchange=function(){l.value=this.value,u._update(Number(this.value),i)},a.oninput=function(){l.value=this.value};var c=this._makeLabel(i[i.length-1],i),p=this._makeItem(i,c,a,l);""!==h&&this.popupHistory[p]!==d&&(this.popupHistory[p]=d,this._setupPopup(h,p))}},{key:"_setupPopup",value:function(t,e){var i=this;if(!0===this.initialized&&!0===this.allowCreation&&this.popupCounter1&&void 0!==arguments[1]?arguments[1]:[],i=arguments.length>2&&void 0!==arguments[2]&&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&&!1===(o=n(r,e))&&!(a instanceof Array)&&"string"!=typeof a&&"boolean"!=typeof a&&a instanceof Object&&(this.allowCreation=!1,o=this._handleObject(a,d,!0),this.allowCreation=!1===i),!1!==o){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),!0===u)if(void 0!==a.enabled){var c=h.copyAndExtendArray(d,"enabled"),p=this._getValue(c);if(!0===p){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 m=this._makeLabel(r,d,!0);this._makeItem(d,m),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.body&&this.parent.body.emitter&&this.parent.body.emitter.emit&&this.parent.body.emitter.emit("configChange",i),this.initialized=!0,this.parent.setOptions(i)}},{key:"_constructOptions",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=i;t="true"===t||t,t="false"!==t&&t;for(var n=0;nvar options = "+JSON.stringify(t,null,2)+""}},{key:"getOptions",value:function(){for(var t={},e=0;e0&&void 0!==arguments[0]?arguments[0]:1;o(this,t),this.pixelRatio=e,this.generated=!1,this.centerCoordinates={x:144.5,y:144.5},this.r=289*.49,this.color={r:255,g:255,b:255,a:1},this.hueCircle=void 0,this.initialColor={r:255,g:255,b:255,a:1},this.previousColor=void 0,this.applied=!1,this.updateCallback=function(){},this.closeCallback=function(){},this._create()}return n(t,[{key:"insertTo",value:function(t){void 0!==this.hammer&&(this.hammer.destroy(),this.hammer=void 0),this.container=t,this.container.appendChild(this.frame),this._bindHammer(),this._setSize()}},{key:"setUpdateCallback",value:function(t){if("function"!=typeof t)throw new Error("Function attempted to set as colorPicker update callback is not a function.");this.updateCallback=t}},{key:"setCloseCallback",value:function(t){if("function"!=typeof t)throw new Error("Function attempted to set as colorPicker closing callback is not a function.");this.closeCallback=t}},{key:"_isColorString",value:function(t){var e={black:"#000000",navy:"#000080",darkblue:"#00008B",mediumblue:"#0000CD",blue:"#0000FF",darkgreen:"#006400",green:"#008000",teal:"#008080",darkcyan:"#008B8B",deepskyblue:"#00BFFF",darkturquoise:"#00CED1",mediumspringgreen:"#00FA9A",lime:"#00FF00",springgreen:"#00FF7F",aqua:"#00FFFF",cyan:"#00FFFF",midnightblue:"#191970",dodgerblue:"#1E90FF",lightseagreen:"#20B2AA",forestgreen:"#228B22",seagreen:"#2E8B57",darkslategray:"#2F4F4F",limegreen:"#32CD32",mediumseagreen:"#3CB371",turquoise:"#40E0D0",royalblue:"#4169E1",steelblue:"#4682B4",darkslateblue:"#483D8B",mediumturquoise:"#48D1CC",indigo:"#4B0082",darkolivegreen:"#556B2F",cadetblue:"#5F9EA0",cornflowerblue:"#6495ED",mediumaquamarine:"#66CDAA",dimgray:"#696969",slateblue:"#6A5ACD",olivedrab:"#6B8E23",slategray:"#708090",lightslategray:"#778899",mediumslateblue:"#7B68EE",lawngreen:"#7CFC00",chartreuse:"#7FFF00",aquamarine:"#7FFFD4",maroon:"#800000",purple:"#800080",olive:"#808000",gray:"#808080",skyblue:"#87CEEB",lightskyblue:"#87CEFA",blueviolet:"#8A2BE2",darkred:"#8B0000",darkmagenta:"#8B008B",saddlebrown:"#8B4513",darkseagreen:"#8FBC8F",lightgreen:"#90EE90",mediumpurple:"#9370D8",darkviolet:"#9400D3",palegreen:"#98FB98",darkorchid:"#9932CC",yellowgreen:"#9ACD32",sienna:"#A0522D",brown:"#A52A2A",darkgray:"#A9A9A9",lightblue:"#ADD8E6",greenyellow:"#ADFF2F",paleturquoise:"#AFEEEE",lightsteelblue:"#B0C4DE",powderblue:"#B0E0E6",firebrick:"#B22222",darkgoldenrod:"#B8860B",mediumorchid:"#BA55D3",rosybrown:"#BC8F8F",darkkhaki:"#BDB76B",silver:"#C0C0C0",mediumvioletred:"#C71585",indianred:"#CD5C5C",peru:"#CD853F",chocolate:"#D2691E",tan:"#D2B48C",lightgrey:"#D3D3D3",palevioletred:"#D87093",thistle:"#D8BFD8",orchid:"#DA70D6",goldenrod:"#DAA520",crimson:"#DC143C",gainsboro:"#DCDCDC",plum:"#DDA0DD",burlywood:"#DEB887",lightcyan:"#E0FFFF",lavender:"#E6E6FA",darksalmon:"#E9967A",violet:"#EE82EE",palegoldenrod:"#EEE8AA",lightcoral:"#F08080",khaki:"#F0E68C",aliceblue:"#F0F8FF",honeydew:"#F0FFF0",azure:"#F0FFFF",sandybrown:"#F4A460",wheat:"#F5DEB3",beige:"#F5F5DC",whitesmoke:"#F5F5F5",mintcream:"#F5FFFA",ghostwhite:"#F8F8FF",salmon:"#FA8072",antiquewhite:"#FAEBD7",linen:"#FAF0E6",lightgoldenrodyellow:"#FAFAD2",oldlace:"#FDF5E6",red:"#FF0000",fuchsia:"#FF00FF",magenta:"#FF00FF",deeppink:"#FF1493",orangered:"#FF4500",tomato:"#FF6347",hotpink:"#FF69B4",coral:"#FF7F50",darkorange:"#FF8C00",lightsalmon:"#FFA07A",orange:"#FFA500",lightpink:"#FFB6C1",pink:"#FFC0CB",gold:"#FFD700",peachpuff:"#FFDAB9",navajowhite:"#FFDEAD",moccasin:"#FFE4B5",bisque:"#FFE4C4",mistyrose:"#FFE4E1",blanchedalmond:"#FFEBCD",papayawhip:"#FFEFD5",lavenderblush:"#FFF0F5",seashell:"#FFF5EE",cornsilk:"#FFF8DC",lemonchiffon:"#FFFACD",floralwhite:"#FFFAF0",snow:"#FFFAFA",yellow:"#FFFF00",lightyellow:"#FFFFE0",ivory:"#FFFFF0",white:"#FFFFFF"};if("string"==typeof t)return e[t]}},{key:"setColor",value:function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("none"!==t){var i=void 0,o=this._isColorString(t);if(void 0!==o&&(t=o),!0===a.isString(t)){if(!0===a.isValidRGB(t)){var n=t.substr(4).substr(0,t.length-5).split(",");i={r:n[0],g:n[1],b:n[2],a:1}}else if(!0===a.isValidRGBA(t)){var s=t.substr(5).substr(0,t.length-6).split(",");i={r:s[0],g:s[1],b:s[2],a:s[3]}}else if(!0===a.isValidHex(t)){var r=a.hexToRGB(t);i={r:r.r,g:r.g,b:r.b,a:1}}}else if(t instanceof Object&&void 0!==t.r&&void 0!==t.g&&void 0!==t.b){var h=void 0!==t.a?t.a:"1.0";i={r:t.r,g:t.g,b:t.b,a:h}}if(void 0===i)throw new Error("Unknown color passed to the colorPicker. Supported are strings: rgb, hex, rgba. Object: rgb ({r:r,g:g,b:b,[a:a]}). Supplied: "+JSON.stringify(t));this._setColor(i,e)}}},{key:"show",value:function(){void 0!==this.closeCallback&&(this.closeCallback(),this.closeCallback=void 0),this.applied=!1,this.frame.style.display="block",this._generateHueCircle()}},{key:"_hide",value:function(){var t=this;!0===(!(arguments.length>0&&void 0!==arguments[0])||arguments[0])&&(this.previousColor=a.extend({},this.color)),!0===this.applied&&this.updateCallback(this.initialColor),this.frame.style.display="none",setTimeout(function(){void 0!==t.closeCallback&&(t.closeCallback(),t.closeCallback=void 0)},0)}},{key:"_save",value:function(){this.updateCallback(this.color),this.applied=!1,this._hide()}},{key:"_apply",value:function(){this.applied=!0,this.updateCallback(this.color),this._updatePicker(this.color)}},{key:"_loadLast",value:function(){void 0!==this.previousColor?this.setColor(this.previousColor,!1):alert("There is no last color to load...")}},{key:"_setColor",value:function(t){!0===(!(arguments.length>1&&void 0!==arguments[1])||arguments[1])&&(this.initialColor=a.extend({},t)),this.color=t;var e=a.RGBToHSV(t.r,t.g,t.b),i=2*Math.PI,o=this.r*e.s,n=this.centerCoordinates.x+o*Math.sin(i*e.h),s=this.centerCoordinates.y+o*Math.cos(i*e.h);this.colorPickerSelector.style.left=n-.5*this.colorPickerSelector.clientWidth+"px",this.colorPickerSelector.style.top=s-.5*this.colorPickerSelector.clientHeight+"px",this._updatePicker(t)}},{key:"_setOpacity",value:function(t){this.color.a=t/100,this._updatePicker(this.color)}},{key:"_setBrightness",value:function(t){var e=a.RGBToHSV(this.color.r,this.color.g,this.color.b);e.v=t/100;var i=a.HSVToRGB(e.h,e.s,e.v);i.a=this.color.a,this.color=i,this._updatePicker()}},{key:"_updatePicker",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.color,e=a.RGBToHSV(t.r,t.g,t.b),i=this.colorPickerCanvas.getContext("2d");void 0===this.pixelRation&&(this.pixelRatio=(window.devicePixelRatio||1)/(i.webkitBackingStorePixelRatio||i.mozBackingStorePixelRatio||i.msBackingStorePixelRatio||i.oBackingStorePixelRatio||i.backingStorePixelRatio||1)),i.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);var o=this.colorPickerCanvas.clientWidth,n=this.colorPickerCanvas.clientHeight;i.clearRect(0,0,o,n),i.putImageData(this.hueCircle,0,0),i.fillStyle="rgba(0,0,0,"+(1-e.v)+")",i.circle(this.centerCoordinates.x,this.centerCoordinates.y,this.r),i.fill(),this.brightnessRange.value=100*e.v,this.opacityRange.value=100*t.a,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+")"}},{key:"_setSize",value:function(){this.colorPickerCanvas.style.width="100%",this.colorPickerCanvas.style.height="100%",this.colorPickerCanvas.width=289*this.pixelRatio,this.colorPickerCanvas.height=289*this.pixelRatio}},{key:"_create",value:function(){if(this.frame=document.createElement("div"),this.frame.className="vis-color-picker",this.colorPickerDiv=document.createElement("div"),this.colorPickerSelector=document.createElement("div"),this.colorPickerSelector.className="vis-selector",this.colorPickerDiv.appendChild(this.colorPickerSelector),this.colorPickerCanvas=document.createElement("canvas"),this.colorPickerDiv.appendChild(this.colorPickerCanvas),this.colorPickerCanvas.getContext){var t=this.colorPickerCanvas.getContext("2d");this.pixelRatio=(window.devicePixelRatio||1)/(t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1),this.colorPickerCanvas.getContext("2d").setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}else{var e=document.createElement("DIV");e.style.color="red",e.style.fontWeight="bold",e.style.padding="10px",e.innerText="Error: your browser does not support HTML canvas",this.colorPickerCanvas.appendChild(e)}this.colorPickerDiv.className="vis-color",this.opacityDiv=document.createElement("div"),this.opacityDiv.className="vis-opacity",this.brightnessDiv=document.createElement("div"),this.brightnessDiv.className="vis-brightness",this.arrowDiv=document.createElement("div"),this.arrowDiv.className="vis-arrow",this.opacityRange=document.createElement("input");try{this.opacityRange.type="range",this.opacityRange.min="0",this.opacityRange.max="100"}catch(t){}this.opacityRange.value="100",this.opacityRange.className="vis-range",this.brightnessRange=document.createElement("input");try{this.brightnessRange.type="range",this.brightnessRange.min="0",this.brightnessRange.max="100"}catch(t){}this.brightnessRange.value="100",this.brightnessRange.className="vis-range",this.opacityDiv.appendChild(this.opacityRange),this.brightnessDiv.appendChild(this.brightnessRange);var i=this;this.opacityRange.onchange=function(){i._setOpacity(this.value)},this.opacityRange.oninput=function(){i._setOpacity(this.value)},this.brightnessRange.onchange=function(){i._setBrightness(this.value)},this.brightnessRange.oninput=function(){i._setBrightness(this.value)},this.brightnessLabel=document.createElement("div"),this.brightnessLabel.className="vis-label vis-brightness",this.brightnessLabel.innerText="brightness:",this.opacityLabel=document.createElement("div"),this.opacityLabel.className="vis-label vis-opacity",this.opacityLabel.innerText="opacity:",this.newColorDiv=document.createElement("div"),this.newColorDiv.className="vis-new-color",this.newColorDiv.innerText="new",this.initialColorDiv=document.createElement("div"),this.initialColorDiv.className="vis-initial-color",this.initialColorDiv.innerText="initial",this.cancelButton=document.createElement("div"),this.cancelButton.className="vis-button vis-cancel",this.cancelButton.innerText="cancel",this.cancelButton.onclick=this._hide.bind(this,!1),this.applyButton=document.createElement("div"),this.applyButton.className="vis-button vis-apply",this.applyButton.innerText="apply",this.applyButton.onclick=this._apply.bind(this),this.saveButton=document.createElement("div"),this.saveButton.className="vis-button vis-save",this.saveButton.innerText="save",this.saveButton.onclick=this._save.bind(this),this.loadButton=document.createElement("div"),this.loadButton.className="vis-button vis-load",this.loadButton.innerText="load last",this.loadButton.onclick=this._loadLast.bind(this),this.frame.appendChild(this.colorPickerDiv),this.frame.appendChild(this.arrowDiv),this.frame.appendChild(this.brightnessLabel),this.frame.appendChild(this.brightnessDiv),this.frame.appendChild(this.opacityLabel),this.frame.appendChild(this.opacityDiv),this.frame.appendChild(this.newColorDiv),this.frame.appendChild(this.initialColorDiv),this.frame.appendChild(this.cancelButton),this.frame.appendChild(this.applyButton),this.frame.appendChild(this.saveButton),this.frame.appendChild(this.loadButton)}},{key:"_bindHammer",value:function(){var t=this;this.drag={},this.pinch={},this.hammer=new s(this.colorPickerCanvas),this.hammer.get("pinch").set({enable:!0}),r.onTouch(this.hammer,function(e){t._moveSelector(e)}),this.hammer.on("tap",function(e){t._moveSelector(e)}),this.hammer.on("panstart",function(e){t._moveSelector(e)}),this.hammer.on("panmove",function(e){t._moveSelector(e)}),this.hammer.on("panend",function(e){t._moveSelector(e)})}},{key:"_generateHueCircle",value:function(){if(!1===this.generated){var t=this.colorPickerCanvas.getContext("2d");void 0===this.pixelRation&&(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);var e=this.colorPickerCanvas.clientWidth,i=this.colorPickerCanvas.clientHeight;t.clearRect(0,0,e,i);var o=void 0,n=void 0,s=void 0,r=void 0;this.centerCoordinates={x:.5*e,y:.5*i},this.r=.49*e;var h=2*Math.PI/360,d=1/this.r,l=void 0;for(s=0;s<360;s++)for(r=0;r0?d._handlers[t]=o:(i.off(t,s),delete d._handlers[t]))}),d},d.emit=function(t,o){e=o.target,i.emit(t,o)},d.destroy=function(){var t=i.element.hammer,e=t.indexOf(d);-1!==e&&t.splice(e,1),t.length||delete i.element.hammer,d._handlers={},i.destroy()},d}var e=null;return t})},function(t,e,i){var o;!function(n,s,r,a){function h(t,e,i){return setTimeout(p(t,i),e)}function d(t,e,i){return!!Array.isArray(t)&&(l(t,i[e],i),!0)}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\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",s=n.console&&(n.console.warn||n.console.log);return s&&s.call(n.console,o,i),t.apply(this,arguments)}}function c(t,e,i){var o,n=e.prototype;o=t.prototype=Object.create(n),o.constructor=t,o._super=n,i&&ft(o,i)}function p(t,e){return function(){return t.apply(e,arguments)}}function f(t,e){return typeof t==yt?t.apply(e?e[0]||a:a,e):t}function m(t,e){return t===a?e:t}function v(t,e,i){l(_(e),function(e){t.addEventListener(e,i,!1)})}function y(t,e,i){l(_(e),function(e){t.removeEventListener(e,i,!1)})}function g(t,e){for(;t;){if(t==e)return!0;t=t.parentNode}return!1}function b(t,e){return t.indexOf(e)>-1}function _(t){return t.trim().split(/\s+/g)}function w(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=I(e):1===n&&(i.firstMultiple=!1);var s=i.firstInput,r=i.firstMultiple,a=r?r.center:s.center,h=e.center=L(o);e.timeStamp=_t(),e.deltaTime=e.timeStamp-s.timeStamp,e.angle=j(a,h),e.distance=z(a,h),P(i,e),e.offsetDirection=R(e.deltaX,e.deltaY);var d=A(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=d.x,e.overallVelocityY=d.y,e.overallVelocity=bt(d.x)>bt(d.y)?d.x:d.y,e.scale=r?B(r.pointers,o):1,e.rotation=r?F(r.pointers,o):0,e.maxPointers=i.prevInput?e.pointers.length>i.prevInput.maxPointers?e.pointers.length:i.prevInput.maxPointers:e.pointers.length,N(i,e);var l=t.element;g(e.srcEvent.target,l)&&(l=e.srcEvent.target),e.target=l}function P(t,e){var i=e.center,o=t.offsetDelta||{},n=t.prevDelta||{},s=t.prevInput||{};e.eventType!==Ct&&s.eventType!==Pt||(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!=Nt&&(h>Et||r.velocity===a)){var d=e.deltaX-r.deltaX,l=e.deltaY-r.deltaY,u=A(h,d,l);o=u.x,n=u.y,i=bt(u.x)>bt(u.y)?u.x:u.y,s=R(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 I(t){for(var e=[],i=0;i=bt(e)?t<0?Lt:At:e<0?Rt:zt}function z(t,e,i){i||(i=Ht);var o=e[i[0]]-t[i[0]],n=e[i[1]]-t[i[1]];return Math.sqrt(o*o+n*n)}function j(t,e,i){i||(i=Ht);var o=e[i[0]]-t[i[0]],n=e[i[1]]-t[i[1]];return 180*Math.atan2(n,o)/Math.PI}function F(t,e){return j(e[1],e[0],Yt)+j(t[1],t[0],Yt)}function B(t,e){return z(e[0],e[1],Yt)/z(t[0],t[1],Yt)}function H(){this.evEl=Vt,this.evWin=Gt,this.pressed=!1,D.apply(this,arguments)}function Y(){this.evEl=Xt,this.evWin=Zt,D.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}function W(){this.evTarget=Jt,this.evWin=Qt,this.started=!1,D.apply(this,arguments)}function V(t,e){var i=x(t.touches),o=x(t.changedTouches);return e&(Pt|Nt)&&(i=k(i.concat(o),"identifier",!0)),[i,o]}function G(){this.evTarget=te,this.targetIds={},D.apply(this,arguments)}function U(t,e){var i=x(t.touches),o=this.targetIds;if(e&(Ct|Tt)&&1===i.length)return o[i[0].identifier]=!0,[i,i];var n,s,r=x(t.changedTouches),a=[],h=this.target;if(s=i.filter(function(t){return g(t.target,h)}),e===Ct)for(n=0;n-1&&o.splice(t,1)};setTimeout(n,ee)}}function K(t){for(var e=t.srcEvent.clientX,i=t.srcEvent.clientY,o=0;o-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(e,t)}var i=this,o=this.state;o=fe&&e(i.options.event+tt(o))},tryEmit:function(t){if(this.canEmit())return this.emit(t);this.state=32},canEmit:function(){for(var t=0;te.threshold&&n&e.direction},attrTest:function(t){return ot.prototype.attrTest.call(this,t)&&(this.state&ce||!(this.state&ce)&&this.directionTest(t))},emit:function(t){this.pX=t.deltaX,this.pY=t.deltaY;var e=et(t.direction);e&&(t.additionalEvent=this.options.event+e),this._super.emit.call(this,t)}}),c(st,ot,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[ae]},attrTest:function(t){ -return this._super.attrTest.call(this,t)&&(Math.abs(t.scale-1)>this.options.threshold||this.state&ce)},emit:function(t){if(1!==t.scale){var e=t.scale<1?"in":"out";t.additionalEvent=this.options.event+e}this._super.emit.call(this,t)}}),c(rt,$,{defaults:{event:"press",pointers:1,time:251,threshold:9},getTouchAction:function(){return[se]},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&(Pt|Nt)&&!n)this.reset();else if(t.eventType&Ct)this.reset(),this._timer=h(function(){this.state=me,this.tryEmit()},e.time,this);else if(t.eventType&Pt)return me;return 32},reset:function(){clearTimeout(this._timer)},emit:function(t){this.state===me&&(t&&t.eventType&Pt?this.manager.emit(this.options.event+"up",t):(this._input.timeStamp=_t(),this.manager.emit(this.options.event,this._input)))}}),c(at,ot,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[ae]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.rotation)>this.options.threshold||this.state&ce)}}),c(ht,ot,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:jt|Ft,pointers:1},getTouchAction:function(){return nt.prototype.getTouchAction.call(this)},attrTest:function(t){var e,i=this.options.direction;return i&(jt|Ft)?e=t.overallVelocity:i&jt?e=t.overallVelocityX:i&Ft&&(e=t.overallVelocityY),this._super.attrTest.call(this,t)&&i&t.offsetDirection&&t.distance>this.options.threshold&&t.maxPointers==this.options.pointers&&bt(e)>this.options.velocity&&t.eventType&Pt},emit:function(t){var e=et(t.offsetDirection);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)}}),c(dt,$,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[re]},process:function(t){var e=this.options,i=t.pointers.length===e.pointers,o=t.distances.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,""),d):n.distance<=8?console.log('%cUnknown option detected: "'+e+'". Did you mean "'+n.closestMatch+'"?'+t.printLocation(n.path,e),d):console.log('%cUnknown option detected: "'+e+'". Did you mean one of these: '+t.print(Object.keys(i))+t.printLocation(o,e),d),a=!0}},{key:"findInOptions",value:function(e,i,o){var n=arguments.length>3&&void 0!==arguments[3]&&arguments[3],s=1e9,a="",h=[],d=e.toLowerCase(),l=void 0;for(var u in i){var c=void 0;if(void 0!==i[u].__type__&&!0===n){var p=t.findInOptions(e,i[u],r.copyAndExtendArray(o,u));s>p.distance&&(a=p.closestMatch,h=p.path,s=p.distance,l=p.indexMatch)}else-1!==u.toLowerCase().indexOf(d)&&(l=u),c=t.levenshteinDistance(e,u),s>c&&(a=u,h=r.copyArray(o),s=c)}return{closestMatch:a,path:h,distance:s,indexMatch:l}}},{key:"printLocation",value:function(t,e){for(var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"Problem value found at: \n",o="\n\n"+i+"options = {\n",n=0;nc,p=a||null===n?n:d+(n-d)*r,y=a||null===s?s:u+(s-u)*r;changed=h._applyRange(p,y),l.updateHiddenDates(h.options.moment,h.body,h.options.hiddenDates),v=v||changed,changed&&h.body.emitter.emit("rangechange",{start:new Date(h.start),end:new Date(h.end),byUser:o}),a?v&&h.body.emitter.emit("rangechanged",{start:new Date(h.start),end:new Date(h.end),byUser:o}):h.animationTimer=setTimeout(t,20)}}()}var y=this._applyRange(n,s);if(l.updateHiddenDates(this.options.moment,this.body,this.options.hiddenDates),y){var g={start:new Date(this.start),end:new Date(this.end),byUser:o};this.body.emitter.emit("rangechange",g),this.body.emitter.emit("rangechanged",g)}},o.prototype._cancelAnimation=function(){this.animationTimer&&(clearTimeout(this.animationTimer),this.animationTimer=null)},o.prototype._applyRange=function(t,e){var i=null!=t?a.convert(t,"Date").valueOf():this.start,o=null!=e?a.convert(e,"Date").valueOf():this.end,n=null!=this.options.max?a.convert(this.options.max,"Date").valueOf():null,s=null!=this.options.min?a.convert(this.options.min,"Date").valueOf():null,r=null;if(isNaN(i)||null===i)throw new Error('Invalid start "'+t+'"');if(isNaN(o)||null===o)throw new Error('Invalid end "'+e+'"');if(on&&(o=n)),null!==n&&o>n&&(r=o-n,i-=r,o-=r,null!=s&&ithis.start&&od&&(this.end-this.start===d&&ithis.end?(i=this.start,o=this.end):(r=o-i-d,i+=r/2,o-=r/2))}var l=this.start!=i||this.end!=o;return i>=this.start&&i<=this.end||o>=this.start&&o<=this.end||this.start>=i&&this.start<=o||this.end>=i&&this.end<=o||this.body.emitter.emit("checkRangedItems"),this.start=i,this.end=o,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._isInsideRange(t)&&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.props.touch.dragging&&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;o-=l.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end);var s="horizontal"==e?this.body.domProps.center.width:this.body.domProps.center.height,r=-i/s*o,a=this.props.touch.start+r,h=this.props.touch.end+r,d=l.snapAwayFromHidden(this.body.hiddenDates,a,this.previousDelta-i,!0),u=l.snapAwayFromHidden(this.body.hiddenDates,h,this.previousDelta-i,!0);if(d!=a||u!=h)return this.deltaDifference+=i,this.props.touch.start=d,this.props.touch.end=u,void this._onDrag(t);this.previousDelta=i,this._applyRange(a,h);var c=new Date(this.start),p=new Date(this.end);this.body.emitter.emit("rangechange",{start:c,end:p,byUser:!0})}},o.prototype._onDragEnd=function(t){this.props.touch.dragging&&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&&this._isInsideRange(t)&&(!this.options.zoomKey||t[this.options.zoomKey])){var e=0;if(t.wheelDelta?e=t.wheelDelta/120:t.detail&&(e=-t.detail/3),e){var i;i=e<0?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=l.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end),n=l.getHiddenDurationBefore(this.options.moment,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=1-e<=0,this.endToFront=e-1<=0;var d=l.snapAwayFromHidden(this.body.hiddenDates,a,1-e,!0),u=l.snapAwayFromHidden(this.body.hiddenDates,h,e-1,!0);d==a&&u==h||(this.props.touch.start=d,this.props.touch.end=u,this.scaleOffset=1-t.scale,a=d,h=u),this.setRange(a,h,!1,!0),this.startToFront=!1,this.endToFront=!0}},o.prototype._isInsideRange=function(t){var e=t.center?t.center.x:t.clientX,i=this.body.dom.centerContainer.getBoundingClientRect(),o=this.body.util.toTime(i.right-e);return o>=this.start&&o<=this.end},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=l.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end),n=l.getHiddenDurationBefore(this.options.moment,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),this.endToFront=!(-i>0);var h=l.snapAwayFromHidden(this.body.hiddenDates,r,i,!0),d=l.snapAwayFromHidden(this.body.hiddenDates,a,-i,!0);h==r&&d==a||(r=h,a=d),this.setRange(r,a,!1,!0),this.startToFront=!1,this.endToFront=!0},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){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,e=t.width,i=t.height,o=t._previousWidth!==e||t._previousHeight!==i;return t._previousWidth=e,t._previousHeight=i,o},t.exports=i},function(t,e){e.convertHiddenOptions=function(t,i,o){if(o&&!Array.isArray(o))return e.convertHiddenOptions(t,i,[o]);if(i.hiddenDates=[],o&&1==Array.isArray(o)){for(var n=0;n=4*a){var c=0,p=s.clone();switch(o[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:",o[h].repeat)}for(;d=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&&n=e&&r=i.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?o<0?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&&t0&&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.setCustomTimeTitle=function(t,e){var i=this.customTimes.filter(function(t){return t.options.id===e});if(0===i.length)throw new Error("No custom time bar found with id "+JSON.stringify(e));if(i.length>0)return i[0].setCustomTitle(t)},o.prototype.getEventProperties=function(t){return{event:t}},o.prototype.addCustomTime=function(t,e){var i=void 0!==t?h.convert(t,"Date").valueOf():new Date;if(this.customTimes.some(function(t){return t.options.id===e}))throw new Error("A custom time with id "+JSON.stringify(e)+" already exists");var o=new c(this.body,h.extend({},this.options,{time:i,id:e}));return this.customTimes.push(o),this.components.push(o),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;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,this.range.setRange(n.start,n.end,o)}else o=!i||void 0===i.animation||i.animation,this.range.setRange(t,e,o)},o.prototype.moveTo=function(t,e){var i=this.range.end-this.range.start,o=h.convert(t,"Date").valueOf(),n=o-i/2,s=o+i/2,r=!e||void 0===e.animation||e.animation;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(){this.redrawCount++;var t=this.dom;if(t&&t.container&&0!=t.container.clientWidth){var e=!1,i=this.options,o=this.props,n=t.root,s=n.clientHeight,a=n.offsetHeight,d=n.offsetWidth,l=n.clientWidth,c=t.centerContainer.clientHeight;u.updateHiddenDates(this.options.moment,this.body,this.options.hiddenDates),"top"==i.orientation?(h.addClassName(n,"vis-top"),h.removeClassName(n,"vis-bottom")):(h.removeClassName(n,"vis-top"),h.addClassName(n,"vis-bottom")),n.style.maxHeight=h.option.asSize(i.maxHeight,""),n.style.minHeight=h.option.asSize(i.minHeight,""),n.style.width=h.option.asSize(i.width,"");var p=o.border;p.left=(t.centerContainer.offsetWidth-t.centerContainer.clientWidth)/2,p.right=p.left,p.top=(t.centerContainer.offsetHeight-c)/2,p.bottom=p.top,o.borderRootHeight=a-s,o.borderRootWidth=d-l,0===c&&(p.left=p.top,p.right=p.left),0===s&&(o.borderRootWidth=o.borderRootHeight),o.center.height=t.center.offsetHeight,o.left.height=t.left.offsetHeight,o.right.height=t.right.offsetHeight,o.top.height=-p.top,o.bottom.height=t.bottom.clientHeight||-p.bottom;var f=Math.max(o.left.height,o.center.height,o.right.height),m=o.top.height+f+o.bottom.height+o.borderRootHeight+p.top+p.bottom;n.style.setProperty("height",h.option.asSize(i.height,m+"px")),o.root.height=a,o.background.height=o.root.height-o.borderRootHeight;var v=o.root.height-o.top.height-o.bottom.height-o.borderRootHeight;o.centerContainer.height=v,o.leftContainer.height=v,o.rightContainer.height=o.leftContainer.height,o.root.width=d,o.background.width=o.root.width-o.borderRootWidth,o.left.width=t.leftContainer.clientWidth||-p.left,o.leftContainer.width=o.left.width,o.right.width=-p.right,o.rightContainer.width=o.right.width;var y=0;y="flowsheet"===this.body.origin?o.root.width-o.right.width-o.borderRootWidth:o.root.width-o.left.width-o.right.width-o.borderRootWidth,o.center.width=y,o.centerContainer.width=y,o.top.width=y,o.bottom.width=y;var g=o.background.height+"px",b=o.centerContainer.height+"px";t.background.style.height=g,t.backgroundVertical.style.height=g,t.backgroundHorizontal.style.height=b,t.centerContainer.style.height=b,t.leftContainer.style.height=o.leftContainer.height+"px",t.background.style.width=o.background.width+"px",t.backgroundVertical.style.width=o.centerContainer.width+"px",t.backgroundHorizontal.style.width=o.background.width+"px",t.centerContainer.style.width=o.center.width+"px",t.bottom.style.width=o.bottom.width+"px",t.background.style.left="0",t.background.style.top="0",t.backgroundVertical.style.left=o.left.width+p.left-2+"px",t.backgroundVertical.style.top="0",t.backgroundHorizontal.style.left="0",t.backgroundHorizontal.style.top=o.top.height+"px",t.centerContainer.style.left=o.left.width+"px",t.centerContainer.style.top=o.top.height+"px",t.leftContainer.style.left="0",t.leftContainer.style.top=o.top.height+"px",t.bottom.style.left=o.left.width+"px",t.bottom.style.top=o.top.height+o.centerContainer.height+"px",this._updateScrollTop();var _=this.props.scrollTop;"top"!=i.orientation.item&&(_+=Math.max(this.props.centerContainer.height-this.props.center.height-p.top-p.bottom,0)),t.center.style.transform="translate(0px, "+_+"px)",t.left.style.transform="translate(0px, "+_+"px)",t.right.style.transform="translate(0px, "+_+"px)";var w=this.props.center.height>this.props.centerContainer.height;this.hammer.get("pan").set({direction:w?r.DIRECTION_ALL:r.DIRECTION_HORIZONTAL});var x=this;if(this.components.forEach(function(t){e=t.redraw(x)||e}),!this.body.reduceRedraw){if(e){if(this.redrawCount<5)return void this.body.emitter.emit("_change")}else this.redrawCount=0}this.initialDrawDone=!0,this.body.emitter.emit("changed")}},o.prototype.repaint=function(){throw new Error("Function repaint is deprecated. Use redraw instead.")},o.prototype.setCurrentTime=function(t){if(!this.currentTime)throw new Error("Option showCurrentTime must be true");this.currentTime.setCurrentTime(t)},o.prototype.getCurrentTime=function(){if(!this.currentTime)throw new Error("Option showCurrentTime must be true");return this.currentTime.getCurrentTime()},o.prototype._toTime=function(t){return u.toTime(this,t,this.props.center.width)},o.prototype._toGlobalTime=function(t){return u.toTime(this,t,this.props.root.width)},o.prototype._toScreen=function(t){return u.toScreen(this,t,this.props.center.width)},o.prototype._toGlobalScreen=function(t){return u.toScreen(this,t,this.props.root.width)},o.prototype._initAutoResize=function(){1==this.options.autoResize?this._startAutoResize():this._stopAutoResize()},o.prototype._startAutoResize=function(){var t=this;if(this._stopAutoResize(),this._onResize=function(){var e=t.dom,i=e.root;if(1!=t.options.autoResize)return void t._stopAutoResize();if(e&&i){var o=i.offsetHeight,n=i.offsetWidth,s=t.props;n==s.lastWidth&&o==s.lastHeight||(s.lastWidth=n,s.lastHeight=o,t.body.emitter.emit("_change"),!t.body.reduceRedraw&&t.body.eventOnDrawn&&t.body.eventOnDrawn())}},h.addEventListener(window,"resize",this._onResize),t.dom&&t.dom.root){var e=t.dom.root,i=e.offsetWidth,o=e.offsetHeight;t.props.lastWidth=i,t.props.lastHeight=o}this.watchTimer=setInterval(this._onResize,0)},o.prototype._stopAutoResize=function(){this.watchTimer&&(clearInterval(this.watchTimer),this.watchTimer=void 0),this._onResize&&(h.removeEventListener(window,"resize",this._onResize),this._onResize=null)},o.prototype._onTouch=function(t){this.touch.allowDragging=!0,this.touch.initialScrollTop=this.props.scrollTop},o.prototype._onPinch=function(t){this.touch.allowDragging=!1},o.prototype._onDrag=function(t){if(this.touch.allowDragging){var e=t.deltaY,i=this._getScrollTop();this._setScrollTop(this.touch.initialScrollTop+e)!=i&&this.emit("verticalDrag")}},o.prototype._setScrollTop=function(t){return this.props.scrollTop=t,this._updateScrollTop(),this.props.scrollTop},o.prototype._updateScrollTop=function(){var t=Math.min(this.props.centerContainer.height-this.props.center.height,0);return t!=this.props.scrollTopMin&&("top"!=this.options.orientation.item&&(this.props.scrollTop+=t-this.props.scrollTopMin),this.props.scrollTopMin=t),this.props.scrollTop>0&&(this.props.scrollTop=0),this.props.scrollTop0&&(g=b)<44&&(g=44),v&&this.options.showMajorLabels?this._repaintMajorLine(f,g,t,y):this.options.showMinorLines&&this._repaintMinorLine(f,g,t,y,x),w.length||_||u.next()||(x=d);s.forEach(this.dom.redundant,function(t){for(;t.length;){var e=t.pop();e&&e.parentNode&&e.parentNode.removeChild(e)}})},o.prototype._setXY=function(t,e,i){t.style.setProperty("transform","translate("+e+"px, "+i+"px)")},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;var r="top"==i?this.props.majorLabelHeight:"0";return this._setXY(n,t,r),n},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;var r="top"==i?"0":this.props.minorLabelHeight+"px";return this._setXY(n,t,r),n},o.prototype._repaintMinorLine=function(t,e,i,o,n){var s=this.dom,r=this;if(r.body&&r.body.domProps){var a=s.redundant.lines.shift();a||(a=document.createElement("div"),s.background.appendChild(a)),s.lines.push(a);var h=r.props;a.style.setProperty("width",e+"px"),a.style.setProperty("height",h.minorLineHeight+"px");var d="top"==i?h.majorLabelHeight:r.body.domProps.top.height,l=n*e-e;return r._setXY(a,l,d),a.className="vis-grid vis-vertical vis-minor "+o,a}},o.prototype._repaintMajorLine=function(t,e,i,o){var n=this.dom.redundant.lines.shift();n||(n=document.createElement("div"),this.dom.background.appendChild(n)),this.dom.lines.push(n);var s=this.props;n.style.width=e+"px",n.style.height=s.majorLineHeight+"px";var r="top"==i?"0":this.body.domProps.top.height,a=t-s.majorLineWidth/2;return this._setXY(n,a,r),n.className="vis-grid vis-vertical vis-major "+o,n},o.prototype._calculateCharSize=function(){var t=this.dom.measureCharMinor;t||(t=document.createElement("DIV"),t.className="vis-text vis-minor vis-measure",t.style.position="absolute",t.appendChild(document.createTextNode("0")),this.dom.foreground.appendChild(t),this.props.minorCharHeight=t.clientHeight,this.props.minorCharWidth=t.clientWidth);var e=this.dom.measureCharMajor;e||(e=document.createElement("DIV"),e.className="vis-text vis-major vis-measure",e.style.position="absolute",e.appendChild(document.createTextNode("0")),this.dom.foreground.appendChild(e),this.props.majorCharHeight=e.clientHeight,this.props.majorCharWidth=e.clientWidth)};t.exports=o},function(t,e,i){function o(t,e,i,s){this.moment=n,this.current=this.moment(),this._start=this.moment(),this._end=this.moment(),this.autoScale=!0,this.scale="day",this.step=1,this.setRange(t,e,i),this.switchedDay=!1,this.switchedMonth=!1,this.switchedYear=!1,Array.isArray(s)?this.hiddenDates=s:this.hiddenDates=void 0!=s?[s]:[],this.format=o.FORMAT}var n=i(2),s=i(30),r=i(1);o.FORMAT={minorLabels:{millisecond:"SSS",second:"s",minute:"HH:mm",hour:"HH:mm",weekday:"ddd D",day:"D",month:"MMM",year:"YYYY"},majorLabels:{millisecond:"HH:mm:ss",second:"D MMMM HH:mm",minute:"ddd D MMMM",hour:"ddd D MMMM",weekday:"MMMM YYYY",day:"MMMM YYYY",month:"YYYY",year:""}},o.prototype.setMoment=function(t){this.moment=t,this.current=this.moment(this.current),this._start=this.moment(this._start),this._end=this.moment(this._end)},o.prototype.setFormat=function(t){var e=r.deepExtend({},o.FORMAT);this.format=r.deepExtend(e,t)},o.prototype.setRange=function(t,e,i){if(!(t instanceof Date&&e instanceof Date))throw"No legal start or end date in method setRange";this._start=void 0!=t?this.moment(t.valueOf()):Date.now(),this._end=void 0!=e?this.moment(e.valueOf()):Date.now(),this.autoScale&&this.setMinimumStep(i)},o.prototype.start=function(){this.current=this._start.clone(),this.roundToMinor()},o.prototype.roundToMinor=function(){switch(this.scale){case"year":this.current.year(this.step*Math.floor(this.current.year()/this.step)),this.current.month(0);case"month":this.current.date(1);case"day":case"weekday":this.current.hours(0);case"hour":this.current.minutes(0);case"minute":this.current.seconds(0);case"second":this.current.milliseconds(0)}if(1!=this.step)switch(this.scale){case"millisecond":this.current.subtract(this.current.milliseconds()%this.step,"milliseconds");break;case"second":this.current.subtract(this.current.seconds()%this.step,"seconds");break;case"minute":this.current.subtract(this.current.minutes()%this.step,"minutes");break;case"hour":this.current.subtract(this.current.hours()%this.step,"hours");break;case"weekday":case"day":this.current.subtract((this.current.date()-1)%this.step,"day");break;case"month":this.current.subtract(this.current.month()%this.step,"month");break;case"year":this.current.subtract(this.current.year()%this.step,"year")}},o.prototype.hasNext=function(){return this.current.valueOf()<=this._end.valueOf()},o.prototype.next=function(){var t=this.current.valueOf();if(this.current.month()<6)switch(this.scale){case"millisecond":this.current.add(this.step,"millisecond");break;case"second":this.current.add(this.step,"second");break;case"minute":this.current.add(this.step,"minute");break;case"hour":this.current.add(this.step,"hour"),this.current.subtract(this.current.hours()%this.step,"hour");break;case"weekday":case"day":this.current.add(this.step,"day");break;case"month":this.current.add(this.step,"month");break;case"year":this.current.add(this.step,"year")}else switch(this.scale){case"millisecond":this.current.add(this.step,"millisecond");break;case"second":this.current.add(this.step,"second");break;case"minute":this.current.add(this.step,"minute");break;case"hour":this.current.add(this.step,"hour");break;case"weekday":case"day":this.current.add(this.step,"day");break;case"month":this.current.add(this.step,"month");break;case"year":this.current.add(this.step,"year")}if(1!=this.step)switch(this.scale){case"millisecond":this.current.milliseconds()0?t.step:1,this.autoScale=!1)},o.prototype.setAutoScale=function(t){this.autoScale=t},o.prototype.setMinimumStep=function(t){if(void 0!=t){31104e9>t&&(this.scale="year",this.step=1e3),15552e9>t&&(this.scale="year",this.step=500),31104e8>t&&(this.scale="year",this.step=100),15552e8>t&&(this.scale="year",this.step=50),31104e7>t&&(this.scale="year",this.step=10),15552e7>t&&(this.scale="year",this.step=5),31104e6>t&&(this.scale="year",this.step=1),7776e6>t&&(this.scale="month",this.step=3),2592e6>t&&(this.scale="month",this.step=1),432e6>t&&(this.scale="day",this.step=5),1728e5>t&&(this.scale="day",this.step=2),864e5>t&&(this.scale="day",this.step=1),432e5>t&&(this.scale="weekday",this.step=1),144e5>t&&(this.scale="hour",this.step=4),36e5>=t&&(this.scale="hour",this.step=1),9e5>t&&(this.scale="minute",this.step=15),6e5>t&&(this.scale="minute",this.step=10),3e5>t&&(this.scale="minute",this.step=5),6e4>t&&(this.scale="minute",this.step=1),15e3>t&&(this.scale="second",this.step=15),1e4>t&&(this.scale="second",this.step=10),5e3>t&&(this.scale="second",this.step=5),1e3>t&&(this.scale="second",this.step=1),200>t&&(this.scale="millisecond",this.step=200),100>t&&(this.scale="millisecond",this.step=100),50>t&&(this.scale="millisecond",this.step=50),10>t&&(this.scale="millisecond",this.step=10),5>t&&(this.scale="millisecond",this.step=5),1>t&&(this.scale="millisecond",this.step=1)}},o.snap=function(t,e,i){var o=n(t);if("year"==e){var s=o.year()+Math.round(o.month()/12);o.year(Math.round(s/i)*i),o.month(0),o.date(0),o.hours(0),o.minutes(0),o.seconds(0),o.milliseconds(0)}else if("month"==e)o.date()>15?(o.date(1),o.add(1,"month")):o.date(1),o.hours(0),o.minutes(0),o.seconds(0),o.milliseconds(0);else if("day"==e){switch(i){case 5:case 2:o.hours(24*Math.round(o.hours()/24));break;default:o.hours(12*Math.round(o.hours()/12))}o.minutes(0),o.seconds(0),o.milliseconds(0)}else if("weekday"==e){switch(i){case 5:case 2:o.hours(12*Math.round(o.hours()/12));break;default:o.hours(6*Math.round(o.hours()/6))}o.minutes(0),o.seconds(0),o.milliseconds(0)}else if("hour"==e){switch(i){case 4:o.minutes(60*Math.round(o.minutes()/60));break;default:o.minutes(30*Math.round(o.minutes()/30))}o.seconds(0),o.milliseconds(0)}else if("minute"==e){switch(i){case 15:case 10:o.minutes(5*Math.round(o.minutes()/5)),o.seconds(0);break;case 5:o.seconds(60*Math.round(o.seconds()/60));break;default:o.seconds(30*Math.round(o.seconds()/30))}o.milliseconds(0)}else if("second"==e)switch(i){case 15:case 10:o.seconds(5*Math.round(o.seconds()/5)),o.milliseconds(0);break;case 5:o.milliseconds(1e3*Math.round(o.milliseconds()/1e3));break;default:o.milliseconds(500*Math.round(o.milliseconds()/500))}else if("millisecond"==e){var r=i>5?i/2:1;o.milliseconds(Math.round(o.milliseconds()/r)*r)}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}var t=this.moment(this.current);switch(this.scale){case"millisecond":return 0==t.milliseconds();case"second":return 0==t.seconds();case"minute":return 0==t.hours()&&0==t.minutes();case"hour":return 0==t.hours();case"weekday":case"day":return 1==t.date();case"month":return 0==t.month();case"year":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?this.moment(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?this.moment(t).format(e):""},o.prototype.getClassName=function(){function t(t){return t/r%2==0?" vis-even":" vis-odd"}function e(t){return t.isSame(Date.now(),"day")?" vis-today":t.isSame(o().add(1,"day"),"day")?" vis-tomorrow":t.isSame(o().add(-1,"day"),"day")?" vis-yesterday":""}function i(t){return t.isSame(Date.now(),"month")?" vis-current-month":""}var o=this.moment,n=this.moment(this.current),s=n.locale?n.locale("en"):n.lang("en"),r=this.step;switch(this.scale){case"millisecond":return t(s.milliseconds()).trim();case"second":return t(s.seconds()).trim();case"minute":return t(s.minutes()).trim();case"hour":var a=s.hours();return 4==this.step&&(a=a+"-h"+(a+4)),"vis-h"+a+e(s)+t(s.hours());case"weekday":return"vis-"+s.format("dddd").toLowerCase()+e(s)+function(t){return t.isSame(Date.now(),"week")?" vis-current-week":""}(s)+t(s.date());case"day":var h=s.date();return"vis-day"+h+" vis-"+s.format("MMMM").toLowerCase()+i(s)+t(h-1);case"month":return"vis-"+s.format("MMMM").toLowerCase()+i(s)+t(s.month());case"year":var d=s.year();return"vis-year"+d+function(t){return t.isSame(Date.now(),"year")?" vis-current-year":""}(s)+t(d);default:return""}},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;["tap","doubletap","press","pinch","pan","panstart","panmove","panend"].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(35),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,void 0!==(s="function"==typeof o?o.apply(e,n):o)&&(t.exports=s)}(0,function(){function t(t){var e,i=t&&t.preventDefault||!1,o=t&&t.container||window,n={},s={keydown:{},keyup:{}},r={};for(e=97;e<=122;e++)r[String.fromCharCode(e)]={code:e-97+65,shift:!1};for(e=65;e<=90;e++)r[String.fromCharCode(e)]={code:e,shift:!0};for(e=0;e<=9;e++)r[""+e]={code:48+e,shift:!1};for(e=1;e<=12;e++)r["F"+e]={code:111+e,shift:!1};for(e=0;e<=9;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;n1e3&&(o=1e3),e.redraw(),e.body.emitter.emit("currentTimeTick"),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=Date.now();this.offset=e-i,this.redraw()},o.prototype.getCurrentTime=function(){return new Date(Date.now()+this.offset)},t.exports=o},function(t,e,i){function o(t,e){this.body=t,this.defaultOptions={type:null,orientation:{item:"bottom"},align:"auto",stack:!0,groupOrderSwap:function(t,e,i){var o=e.order;e.order=t.order,t.order=o},groupOrder:"order",selectable:!0,multiselect:!1,itemsAlwaysDraggable:!1,editable:{updateTime:!1,updateGroup:!1,add:!1,remove:!1},groupEditable:{order:!1,add:!1,remove:!1},snap:d.snap,onAdd:function(t,e){e(t)},onUpdate:function(t,e){e(t)},onMove:function(t,e){e(t)},onRemove:function(t,e){e(t)},onMoving:function(t,e){e(t)},onAddGroup:function(t,e){e(t)},onMoveGroup:function(t,e){e(t)},onRemoveGroup:function(t,e){e(t)},margin:{item:{horizontal:10,vertical:10},axis:20}},this.options=r.extend({},this.defaultOptions),this.itemOptions={type:{start:"Date",end:"Date"}},this.conversion={toScreen:t.util.toScreen,toTime:t.util.toTime},this.dom={},this.props={},this.hammer=null;var i=this;this.itemsData=null,this.groupsData=null,this.itemListeners={add:function(t,e,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.groups={},this.groupIds=[],this.selection=[],this.touchParams={},this.groupTouchParams={},this._create(),this.setOptions(e)}var n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},s=i(23),r=i(1),a=i(9),h=i(11),d=i(33),l=i(29),u=i(40),c=i(42),p=i(43),f=i(45),m=i(46),v=i(47),y="__ungrouped__",g="__background__";o.prototype=new l,o.types={background:v,box:p,range:m,point:f},o.prototype._create=function(){var t=document.createElement("div");t.className="vis-itemset",t["timeline-itemset"]=this,this.dom.frame=t;var e=document.createElement("div");e.className="vis-background",t.appendChild(e),this.dom.background=e;var i=document.createElement("div");i.className="vis-foreground",t.appendChild(i),this.dom.foreground=i;var o=document.createElement("div");o.className="vis-axis",this.dom.axis=o;var n=document.createElement("div");n.className="vis-labelset",this.dom.labelSet=n,this._updateUngrouped();var r=new c(g,null,this);r.show(),this.groups[g]=r,this.hammer=new s(this.body.dom.centerContainer),this.hammer.on("hammer.input",function(t){t.isFirst&&this._onTouch(t)}.bind(this)),this.hammer.on("panstart",this._onDragStart.bind(this)),this.hammer.on("panmove",this._onDrag.bind(this)),this.hammer.on("panend",this._onDragEnd.bind(this)),this.hammer.get("pan").set({threshold:5,direction:s.DIRECTION_HORIZONTAL}),this.hammer.on("tap",this._onSelectItem.bind(this)),this.hammer.on("press",this._onMultiSelectItem.bind(this)),this.hammer.on("doubletap",this._onAddItem.bind(this)),this.groupHammer=new s(this.body.dom.leftContainer),this.groupHammer.on("panstart",this._onGroupDragStart.bind(this)),this.groupHammer.on("panmove",this._onGroupDrag.bind(this)),this.groupHammer.on("panend",this._onGroupDragEnd.bind(this)),this.groupHammer.get("pan").set({threshold:5,direction:s.DIRECTION_HORIZONTAL}),this.show()},o.prototype.setOptions=function(t){if(t){var e=["type","align","order","stack","selectable","multiselect","itemsAlwaysDraggable","multiselectPerGroup","groupOrder","dataAttributes","template","groupTemplate","hide","snap","groupOrderSwap"];r.selectiveExtend(e,this.options,t),"orientation"in t&&("string"==typeof t.orientation?this.options.orientation.item="top"===t.orientation?"top":"bottom":"object"===n(t.orientation)&&"item"in t.orientation&&(this.options.orientation.item=t.orientation.item)),"margin"in t&&("number"==typeof t.margin?(this.options.margin.axis=t.margin,this.options.margin.item.horizontal=t.margin,this.options.margin.item.vertical=t.margin):"object"===n(t.margin)&&(r.selectiveExtend(["axis"],this.options.margin,t.margin),"item"in t.margin&&("number"==typeof t.margin.item?(this.options.margin.item.horizontal=t.margin.item,this.options.margin.item.vertical=t.margin.item):"object"===n(t.margin.item)&&r.selectiveExtend(["horizontal","vertical"],this.options.margin.item,t.margin.item)))),"editable"in t&&("boolean"==typeof t.editable?(this.options.editable.updateTime=t.editable,this.options.editable.updateGroup=t.editable,this.options.editable.add=t.editable,this.options.editable.remove=t.editable):"object"===n(t.editable)&&r.selectiveExtend(["updateTime","updateGroup","add","remove"],this.options.editable,t.editable)),"groupEditable"in t&&("boolean"==typeof t.groupEditable?(this.options.groupEditable.order=t.groupEditable,this.options.groupEditable.add=t.groupEditable,this.options.groupEditable.remove=t.groupEditable):"object"===n(t.groupEditable)&&r.selectiveExtend(["order","add","remove"],this.options.groupEditable,t.groupEditable));["onAdd","onUpdate","onRemove","onMove","onMoving","onAddGroup","onMoveGroup","onRemoveGroup"].forEach(function(e){var i=t[e];if(i){if(!(i instanceof Function))throw new Error("option "+e+" must be a function "+e+"(item, callback)");this.options[e]=i}}.bind(this)),this.markDirty()}},o.prototype.markDirty=function(t){this.groupIds=[],this.stackDirty=!0,t&&t.refreshItems&&r.forEach(this.items,function(t){t.dirty=!0,t.displayed&&t.redraw()})},o.prototype.destroy=function(){this.hide(),this.setItems(null),this.setGroups(null),this.hammer=null,this.body=null,this.conversion=null},o.prototype.hide=function(){this.dom.frame.parentNode&&this.dom.frame.parentNode.removeChild(this.dom.frame),this.dom.axis.parentNode&&this.dom.axis.parentNode.removeChild(this.dom.axis),this.dom.labelSet.parentNode&&this.dom.labelSet.parentNode.removeChild(this.dom.labelSet)},o.prototype.show=function(){this.dom.frame.parentNode||this.body.dom.center.appendChild(this.dom.frame),this.dom.axis.parentNode||this.body.dom.backgroundVertical.appendChild(this.dom.axis),this.dom.labelSet.parentNode||this.body.dom.left.appendChild(this.dom.labelSet)},o.prototype.setSelection=function(t){var e,i,o,n;for(void 0==t&&(t=[]),Array.isArray(t)||(t=[t]),e=0,i=this.selection.length;ee&&o.push(h.id)}return o},o.prototype._deselect=function(t){for(var e=this.selection,i=0,o=e.length;io)return}}if(e&&e!=this.groupTouchParams.group){var h=this.groupsData,d=h.get(e.groupId),l=h.get(this.groupTouchParams.group.groupId);l&&d&&(this.options.groupOrderSwap(l,d,this.groupsData),this.groupsData.update(l),this.groupsData.update(d));var u=this.groupsData.getIds({order:this.options.groupOrder});if(!r.equalArray(u,this.groupTouchParams.originalOrder))for(var h=this.groupsData,c=this.groupTouchParams.originalOrder,p=this.groupTouchParams.group.groupId,f=Math.min(c.length,u.length),m=0,v=0,y=0;m=f)break;if(u[m+v]!=p)if(c[m+y]!=p){var g=u.indexOf(c[m+y]),b=h.get(u[m+v]),_=h.get(c[m+y]);this.options.groupOrderSwap(b,_,h),h.update(b),h.update(_);var w=u[m+v];u[m+v]=c[m+y],u[g]=w,m++}else y=1;else v=1}}}},o.prototype._onGroupDragEnd=function(t){if(this.options.groupEditable.order&&this.groupTouchParams.group){t.stopPropagation();var e=this,i=e.groupTouchParams.group.groupId,o=e.groupsData.getDataSet(),n=r.extend({},o.get(i));e.options.onMoveGroup(n,function(t){if(t)t[o._fieldId]=i,o.update(t);else{var n=o.getIds({order:e.options.groupOrder});if(!r.equalArray(n,e.groupTouchParams.originalOrder))for(var s=e.groupTouchParams.originalOrder,a=Math.min(s.length,n.length),h=0;h=a)break;var d=n.indexOf(s[h]),l=o.get(n[h]),u=o.get(s[h]);e.options.groupOrderSwap(l,u,o),groupsData.update(l),groupsData.update(u);var c=n[h];n[h]=s[h],n[d]=c,h++}}}),e.body.emitter.emit("groupDragged",{groupId:i})}},o.prototype._onSelectItem=function(t){if(this.options.selectable){var e=t.srcEvent&&(t.srcEvent.ctrlKey||t.srcEvent.metaKey),i=t.srcEvent&&t.srcEvent.shiftKey;if(e||i)return void this._onMultiSelectItem(t);var o=this.getSelection(),n=this.itemFromTarget(t),s=n?[n.id]:[];this.setSelection(s);var r=this.getSelection();(r.length>0||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(o){var n=e.itemsData.get(o.id);this.options.onUpdate(n,function(t){t&&e.itemsData.getDataSet().update(t)})}else{var s=r.getAbsoluteLeft(this.dom.frame),a=t.center.x-s,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]=r.randomUUID();var p=this.groupFromTarget(t);p&&(u.group=p.groupId),u=this._cloneItemData(u),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():[];if((t.srcEvent&&t.srcEvent.shiftKey||!1)&&this.options.multiselect){var n=this.itemsData.get(e.id).group,s=void 0;this.options.multiselectPerGroup&&i.length>0&&(s=this.itemsData.get(i[0]).group),this.options.multiselectPerGroup&&void 0!=s&&s!=n||i.push(e.id);var r=o._getItemRange(this.itemsData.get(i,this.itemOptions));if(!this.options.multiselectPerGroup||s==n){i=[];for(var a in this.items)if(this.items.hasOwnProperty(a)){var h=this.items[a],d=h.data.start,l=void 0!==h.data.end?h.data.end:d;!(d>=r.min&&l<=r.max)||this.options.multiselectPerGroup&&s!=this.itemsData.get(h.id).group||h instanceof v||i.push(h.id)}}}else{var u=i.indexOf(e.id);-1==u?i.push(e.id):i.splice(u,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;i=r.top&&er.top)return n}else if(0===i&&e0){var t=this;this.resetSubgroups(),n.forEach(this.visibleItems,function(e){void 0!==e.data.subgroup&&(t.subgroups[e.data.subgroup].height=Math.max(t.subgroups[e.data.subgroup].height,e.height),t.subgroups[e.data.subgroup].visible=!0)})}},o.prototype._calculateHeight=function(t,e){if(null!=e&&null!=e.rowHeights&&null!=e.rowHeights[this.groupId])return e.rowHeights[this.groupId];var i,o=this.visibleItems;if(o.length>0){var s=o[0].top,r=o[0].top+o[0].height;if(n.forEach(o,function(t){s=Math.min(s,t.top),r=Math.max(r,t.top+t.height)}),s>t.axis){var a=s-t.axis;r-=a,n.forEach(o,function(t){t.top-=a})}i=r+t.item.vertical/2}else i=0;return i=Math.max(i,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,e,i,o){if(this.items[t.id]=t,t.setParent(this),this.stackDirty=!0,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)&&this.itemSet.body){var n=this.itemSet.body.range;this._checkIfVisible(t,this.visibleItems,n,e,i,o)}},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;i0)for(a=0;a=0&&(s=e[r],!n(s));r--){var a=o[s.id];void 0===a&&(a=!0,i.push(s))}for(r=t+1;re.left&&t.top-i.vertical+.001e.top}},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(40));o.prototype=Object.create(n.prototype),o.prototype.redraw=function(t,e,i){this.visibleItems=this._updateVisibleItems(this.orderedItems,this.visibleItems,t);for(var o=0,n=this.visibleItems.length;ot.start-e&&this.data.start0){var e=[];if(Array.isArray(this.options.dataAttributes))e=this.options.dataAttributes;else{if("all"!=this.options.dataAttributes)return;e=Object.keys(this.data)}for(var i=0;it.start-e&&this.data.start=t.start},o.prototype.redraw=function(){var t=this,e=this.dom;if(!e){if(this.dom={},e=this.dom,e.box=document.createElement("div"),e.frame=document.createElement("div"),e.frame.className="vis-item-overflow",e.box.appendChild(e.frame),e.content=document.createElement("div"),e.content.className="vis-item-content",e.frame.appendChild(e.content),e.frame.addEventListener("mouseover",this.mouseoverCallback),this.data.ieComplexTooltip){var i=void 0;e.frame.addEventListener("mouseenter",function(e){clearTimeout(i),i=setTimeout(function(){if(!e.target.querySelector(".editing-cell-component:not(.ng-hide)"))return t.data.mouseOver(e)},200)})}e.frame.addEventListener("mouseout",this.mouseoutCallback),e.box["timeline-item"]=this,this.dirty=!0}if(!this.parent)throw new Error("Cannot redraw item: no parent attached");if(!e.box.parentNode){var o=this.parent.dom.foreground;if(!o)throw new Error("Cannot redraw item: parent has no foreground container element");o.appendChild(e.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 n=(this.options.editable.updateTime||this.options.editable.updateGroup||!0===this.editable)&&!1!==this.editable,s=(this.data.className?" "+this.data.className:"")+(this.selected?" vis-selected":"")+(n?" vis-editable":" vis-readonly");e.box.className=this.baseClassName+s,this.dirty=!1}this._repaintDeleteButton(e.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,e,i,o,n){var s=this.conversion.toScreen(this.data.start),r=this.conversion.toScreen(this.data.end),a=void 0,h=void 0;if(0==e.options.gap){var d=new Date(this.data.start),l=new Date(this.data.end),u=0,c=0;o&&(o.forEach(function(t){var e=t.__time.toDate();d>e&&u++,l>e&&c++}),o.length>0&&(s=n*u,r=n*c,this.dom.box.classList.add("tablemode-fit")))}else if(this.data.id&&o&&o.length>0&&i){var p=this.data.prop;if("tablemode"==p.type||"tablemode_multiple_values"==p.type){var f=this.data.id.split("_"),m=parseInt(f[1]);this.dom.box.classList.remove("tablemode-fit");var v=m*n,y=(m+1)*n;s=v,r=0==s?n:y}else if(e){var g=new Date(e.start),b=1/e.options.gap,_=new Date(this.data.start),w=Math.abs(_.getTime()-g.getTime()),x=parseFloat(w/36e5).toFixed(2),k=b*x*n;if(s=k,new Date(this.data.end)!=new Date(this.data.start)){var O=new Date(this.data.end),M=Math.abs(O.getTime()-_.getTime());r=M/36e5*n*b+s}}}if(void 0===t||!0===t){var S=this.parent.width;s<-S&&(s=-S);var D=2*S;r>D&&(r=D)}var E=Math.max(r-s,1)+2;switch(this.overflow?(this.left=s,this.width=E+this.props.content.width,h=this.props.content.width):(this.left=s,this.width=E,h=Math.min(r-s,this.props.content.width)),this.dom.box.style.transform="translateX("+this.left+"px)",this.dom.box.style.width=E+"px",this.options.align){case"left":a=0;break;case"right":a=Math.max(E-h,0);break;case"center":a=Math.max((E-h)/2,0);break;default:a=this.overflow?r>0?Math.max(-s,0):-h:s<0?-s:0}this.dom.content.style.transform="translateX("+a+"px)"},o.prototype.repositionY=function(){var t=this.options.orientation.item,e=this.dom.box,i=this.top,o=i.top,n=i.height,s=this.parent.height;"top"==t?e.style.setProperty("top",o+"px"):e.style.setProperty("top",s-o-n+"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){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(44)),s=i(42),r=i(46);o.prototype=new n(null,null,null),o.prototype.baseClassName="vis-item vis-background",o.prototype.stack=!1,o.prototype.isVisible=function(t){return!0},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){Object.defineProperty(e,"__esModule",{value:!0});var i="string",o="boolean",n="number",s="object",r={configure:{enabled:{boolean:o},filter:{boolean:o,function:"function"},container:{dom:"dom"},__type__:{object:s,boolean:o,function:"function"}},align:{string:i},autoResize:{boolean:o},throttleRedraw:{number:n},clickToUse:{boolean:o},dataAttributes:{string:i,array:"array"},editable:{add:{boolean:o,undefined:"undefined"},remove:{boolean:o,undefined:"undefined"},updateGroup:{boolean:o,undefined:"undefined"},updateTime:{boolean:o,undefined:"undefined"},__type__:{boolean:o,object:s}},end:{number:n,date:"date",string:i,moment:"moment"},format:{minorLabels:{millisecond:{string:i,undefined:"undefined"},second:{string:i,undefined:"undefined"},minute:{string:i,undefined:"undefined"},hour:{string:i,undefined:"undefined"},weekday:{string:i,undefined:"undefined"},day:{string:i,undefined:"undefined"},month:{string:i,undefined:"undefined"},year:{string:i,undefined:"undefined"},__type__:{object:s}},majorLabels:{millisecond:{string:i,undefined:"undefined"},second:{string:i,undefined:"undefined"},minute:{string:i,undefined:"undefined"},hour:{string:i,undefined:"undefined"},weekday:{string:i,undefined:"undefined"},day:{string:i,undefined:"undefined"},month:{string:i,undefined:"undefined"},year:{string:i,undefined:"undefined"},__type__:{object:s}},__type__:{object:s}},moment:{function:"function"},groupOrder:{string:i,function:"function"},groupEditable:{add:{boolean:o,undefined:"undefined"},remove:{boolean:o,undefined:"undefined"},order:{boolean:o,undefined:"undefined"},__type__:{boolean:o,object:s}},groupOrderSwap:{function:"function"},height:{string:i,number:n},hiddenDates:{start:{date:"date",number:n,string:i,moment:"moment"},end:{date:"date",number:n,string:i,moment:"moment"},repeat:{string:i},__type__:{object:s,array:"array"}},itemsAlwaysDraggable:{boolean:o},locale:{string:i},locales:{__any__:{any:"any"},__type__:{object:s}},margin:{axis:{number:n},item:{horizontal:{number:n,undefined:"undefined"},vertical:{number:n,undefined:"undefined"},__type__:{object:s,number:n}},__type__:{object:s,number:n}},max:{date:"date",number:n,string:i,moment:"moment"},maxHeight:{number:n,string:i},maxMinorChars:{number:n},gap:{number:n},itemsFit:{array:"array"},min:{date:"date",number:n,string:i,moment:"moment"},minHeight:{number:n,string:i},moveable:{boolean:o},multiselect:{boolean:o},multiselectPerGroup:{boolean:o},onAdd:{function:"function"},onUpdate:{function:"function"},onMove:{function:"function"},onMoving:{function:"function"},onRemove:{function:"function"},onAddGroup:{function:"function"},onMoveGroup:{function:"function"},onRemoveGroup:{function:"function"},order:{function:"function"},orientation:{axis:{string:i,undefined:"undefined"},item:{string:i,undefined:"undefined"},__type__:{string:i,object:s}},selectable:{boolean:o},showCurrentTime:{boolean:o},showMajorLabels:{boolean:o},showMinorLabels:{boolean:o},showMinorLines:{boolean:o},stack:{boolean:o},snap:{function:"function",null:"null"},start:{date:"date",number:n,string:i,moment:"moment"},template:{function:"function"},groupTemplate:{function:"function"},timeAxis:{scale:{string:i,undefined:"undefined"},step:{number:n,undefined:"undefined"},__type__:{object:s}},type:{string:i},width:{string:i,number:n},zoomable:{boolean:o},zoomKey:{string:["ctrlKey","altKey","metaKey",""]},zoomMax:{number:n},zoomMin:{number:n},__type__:{object:s}},a={global:{align:["center","left","right"],autoResize:!0,throttleRedraw:[10,0,1e3,10],clickToUse:!1,editable:{add:!1,remove:!1,updateGroup:!1,updateTime:!1},end:"",format:{minorLabels:{millisecond:"SSS",second:"s",minute:"HH:mm",hour:"HH:mm",weekday:"ddd D",day:"D",month:"MMM",year:"YYYY"},majorLabels:{millisecond:"HH:mm:ss",second:"D MMMM HH:mm",minute:"ddd D MMMM",hour:"ddd D MMMM",weekday:"MMMM YYYY",day:"MMMM YYYY",month:"YYYY",year:""}},groupsDraggable:!1,height:"",locale:"",margin:{axis:[20,0,100,1],item:{horizontal:[10,0,100,1],vertical:[10,0,100,1]}},max:"",maxHeight:"",maxMinorChars:[7,0,20,1],min:"",minHeight:"",moveable:!1,multiselect:!1,multiselectPerGroup:!1,orientation:{axis:["both","bottom","top"],item:["bottom","top"]},selectable:!0,showCurrentTime:!1,showMajorLabels:!0,showMinorLabels:!0,showMinorLines:!0,stack:!0,start:"",type:["box","point","range","background"],width:"100%",zoomable:!0,zoomKey:["ctrlKey","altKey","metaKey",""],zoomMax:[31536e10,10,31536e10,1],zoomMin:[10,10,31536e10,1]}};e.allOptions=r,e.configureOptions=a},function(t,e,i){function o(t){return t&&t.__esModule?t:{default:t}}function n(t,e,i,o){if(!(Array.isArray(i)||i instanceof u||i instanceof c)&&i instanceof Object){var n=o;o=i,i=n}var s=this;this.defaultOptions={start:null,end:null,autoResize:!0,orientation:{axis:"bottom",item:"bottom"},moment:d,width:null,height:null,maxHeight:null,minHeight:null},this.options=l.deepExtend({},this.defaultOptions),this._create(t),this.components=[],this.body={dom:this.dom,domProps:this.props,emitter:{on:this.on.bind(this),off:this.off.bind(this),emit:this.emit.bind(this)},hiddenDates:[],util:{toScreen:s._toScreen.bind(s),toGlobalScreen:s._toGlobalScreen.bind(s),toTime:s._toTime.bind(s),toGlobalTime:s._toGlobalTime.bind(s)}},this.range=new p(this.body),this.components.push(this.range),this.body.range=this.range,this.timeAxis=new m(this.body),this.components.push(this.timeAxis),this.currentTime=new v(this.body),this.components.push(this.currentTime),this.linegraph=new g(this.body),this.components.push(this.linegraph),this.itemsData=null,this.groupsData=null,this.on("tap",function(t){s.emit("click",s.getEventProperties(t))}),this.on("doubletap",function(t){s.emit("doubleClick",s.getEventProperties(t))}),this.dom.root.oncontextmenu=function(t){s.emit("contextmenu",s.getEventProperties(t))},o&&this.setOptions(o),i&&this.setGroups(i),e&&this.setItems(e),this._redraw()}var s=i(21),r=o(s),a=i(27),h=o(a),d=(i(13),i(23),i(2)),l=i(1),u=i(9),c=i(11),p=i(28),f=i(31),m=i(32),v=i(38),y=i(36),g=i(50),b=i(27).printStyle,_=i(62).allOptions,w=i(62).configureOptions;n.prototype=new f,n.prototype.setOptions=function(t){!0===h.default.validate(t,_)&&console.log("%cErrors have been found in the supplied options object.",b),f.prototype.setOptions.call(this,t)},n.prototype.setItems=function(t){var e,i=null==this.itemsData;if(e=t?t instanceof u||t instanceof c?t:new u(t,{type:{start:"Date",end:"Date"}}):null,this.itemsData=e,this.linegraph&&this.linegraph.setItems(e),i)if(void 0!=this.options.start||void 0!=this.options.end){var o=void 0!=this.options.start?this.options.start:null,n=void 0!=this.options.end?this.options.end:null;this.setWindow(o,n,{animation:!1})}else this.fit({animation:!1})},n.prototype.setGroups=function(t){var e;e=t?t instanceof u||t instanceof c?t:new u(t):null,this.groupsData=e,this.linegraph.setGroups(e)},n.prototype.getLegend=function(t,e,i){return void 0===e&&(e=15),void 0===i&&(i=15),void 0!==this.linegraph.groups[t]?this.linegraph.groups[t].getLegend(e,i):"cannot find group:'"+t+"'"},n.prototype.isGroupVisible=function(t){return void 0!==this.linegraph.groups[t]&&(this.linegraph.groups[t].visible&&(void 0===this.linegraph.options.groups.visibility[t]||1==this.linegraph.options.groups.visibility[t]))},n.prototype.getDataRange=function(){var t=null,e=null;for(var i in this.linegraph.groups)if(this.linegraph.groups.hasOwnProperty(i)&&1==this.linegraph.groups[i].visible)for(var o=0;os?s:t,e=null==e?s:e0){var h={};for(this._getRelevantData(r,h,o,n),this._applySampling(r,h),e=0;e0)switch(t.options.style){case"line":l.hasOwnProperty(r[e])||(l[r[e]]=p.calcPath(h[r[e]],t)),p.draw(l[r[e]],t,this.framework);case"point":case"points":"point"!==t.options.style&&"points"!==t.options.style&&!0!==t.options.drawPoints.enabled||f.draw(h[r[e]],t,this.framework)}}}return a.cleanupElements(this.svgElements),!1},o.prototype._stack=function(t,e){var i=void 0,o=void 0,n=void 0,s=void 0,r=void 0;i=0;for(var a=0;at[a].x){r=e[h],s=0===h?r:e[h-1],i=h;break}}void 0===r&&(s=e[e.length-1],r=e[e.length-1]),o=r.x-s.x,n=r.y-s.y,t[a].y=0===o?t[a].orginalY+r.y:t[a].orginalY+n/o*(t[a].x-s.x)+s.y}},o.prototype._getRelevantData=function(t,e,i,o){var n=void 0,s=void 0,r=void 0,a=void 0;if(t.length>0)for(s=0;s0)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=new Array(r),l=0;l0){for(r=0;r0&&(n=this.groups[t[r]],!0===d.stack&&"bar"===d.style?"left"===d.yAxisOrientation?a=a.concat(n.getItems()):h=h.concat(n.getItems()):i[t[r]]=n.getYRange(o,t[r]));s.getStackedYRange(a,i,t,"__barStackLeft","left"),s.getStackedYRange(h,i,t,"__barStackRight","right")}},o.prototype._updateYAxis=function(t,e){var i=this,o=!1,n=!1,s=!1,r=1e9,a=1e9,h=-1e9,d=-1e9,l=void 0,u=void 0;if(t.length>0){for(var c=0;cl?l:r,h=hl?l:a,d=d0?(s=e.body.totalizer.periods.filter(function(t){return t.end.valueOf()>e.body.range.start&&t.end.valueOf()0&&void 0!==arguments[0]?arguments[0]:null;return t&&t in this.yAxisLeft?this.yAxisLeft[t]:this.yAxisLeft[Object.keys(this.yAxisLeft)[0]]},o.prototype._insertYAxisLeft=function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(e||0===Object.keys(this.yAxisLeft).length){var o=[this.body,this.options.dataAxis,this.svg,this.options.groups],n=new(Function.prototype.bind.apply(h,[null].concat(o)));i&&(n=new(Function.prototype.bind.apply(m,[null].concat(o)))),this.yAxisLeft[t]=n}},t.exports=o},function(t,e,i){function o(t,e){}var n=i(7),s=i(52);o.drawIcon=function(t,e,i,o,s,r){var a=.5*s,h=n.getSVGElement("rect",r.svgElements,r.svg);h.setAttributeNS(null,"x",e),h.setAttributeNS(null,"y",i-a),h.setAttributeNS(null,"width",o),h.setAttributeNS(null,"height",2*a),h.setAttributeNS(null,"class","vis-outline");var d=Math.round(.3*o),l=t.options.barChart.width,u=l/d,c=Math.round(.4*s),p=Math.round(.75*s),f=Math.round((o-2*d)/3);if(n.drawBar(e+.5*d+f,i+a-c-1,d,c,t.className+" vis-bar",r.svgElements,r.svg,t.style),n.drawBar(e+1.5*d+f+2,i+a-p-1,d,p,t.className+" vis-bar",r.svgElements,r.svg,t.style),1==t.options.drawPoints.enabled){var m={style:t.options.drawPoints.style,styles:t.options.drawPoints.styles,size:t.options.drawPoints.size/u,width:t.options.drawPoints.width,height:t.options.drawPoints.height,className:t.className};n.drawPoint(e+.5*d+f,i+a-c-1,m,r.svgElements,r.svg),n.drawPoint(e+1.5*d+f+2,i+a-p-1,m,r.svgElements,r.svg)}},o.draw=function(t,e,i){var r,a,h,d,l,u,c=[],p={},f=0;for(l=0;l0&&(i=Math.min(i,Math.abs(e[o-1].screen_x-e[o].screen_x))),0===i&&(void 0===t[e[o].screen_x]&&(t[e[o].screen_x]={amount:0,resolved:0,accumulatedPositive:0,accumulatedNegative:0}),t[e[o].screen_x].amount+=1)},o._getSafeDrawData=function(t,e,i){var o,n;return t0?(o=t0){t.sort(function(t,e){return t.screen_x===e.screen_x?t.groupIde[s].screen_y?e[s].screen_y:o,n=nt[r].accumulatedNegative?t[r].accumulatedNegative:o,o=o>t[r].accumulatedPositive?t[r].accumulatedPositive:o,n=n-1||e.id.indexOf("arrow-avg")>-1&&e.withTrend)&&(D=t[l]),u=a.drawPoint(c.screen_x+o,c.screen_y,n(e,void 0,D),i.svgElements,i.svg,c.label,M)}d.push(u)}}return d},o.drawIcon=function(t,e,i,o,s,r){var h=.5*s,d=a.getSVGElement("rect",r.svgElements,r.svg);d.setAttributeNS(null,"x",e),d.setAttributeNS(null,"y",i-h),d.setAttributeNS(null,"width",o),d.setAttributeNS(null,"height",2*h),d.setAttributeNS(null,"class","vis-outline"),a.drawPoint(e+.5*o,i,n(t),r.svgElements,r.svg)},t.exports=o},function(t,e,i){function o(t,e,i,o){this.id=n.randomUUID(),this.body=t;var s=document.querySelector(".data-region.data-container-with-timeline"),r=0;if("flowsheet"===this.body.origin){r=parseInt(this.body.summaryWidth)*this.body.dataRegionDatagrid/100+"px"}else r=s?parseInt(s.offsetWidth/26)+"px":"0px";this.defaultOptions={orientation:"left",showMinorLabels:!0,showMinorLines:!0,showMajorLabels:!0,icons:!1,majorLinesOffset:7,minorLinesOffset:4,labelOffsetX:10,labelOffsetY:2,iconWidth:20,width:r,visible:!0,alignZeros:!0,data:void 0,left:{range:{min:void 0,max:void 0},format:function(t){return""+parseFloat(t.toPrecision(3))},title:{text:void 0,style:void 0}},right:{range:{min:void 0,max:void 0},format:function(t){return""+parseFloat(t.toPrecision(3))},title:{text:void 0,style:void 0}}},this.linegraphOptions=o,this.linegraphSVG=i,this.props={},this.DOMelements={lines:{},labels:{},title:{}},this.dom={},this.scale=void 0,this.range={start:0,end:0},this.options=n.extend({},this.defaultOptions),this.conversionFactor=1,this.setOptions(e),this.width=Number((""+this.options.width).replace("px","")),this.minWidth=this.width,this.height=this.linegraphSVG.getBoundingClientRect().height,this.hidden=!1,this.stepPixels=25,this.zeroCrossing=-1,this.amountOfSteps=-1,this.lineOffset=0,this.master=!0,this.masterAxis=null,this.svgElements={},this.iconsRemoved=!1,this.groups={},this.amountOfGroups=0,this._create(),this.framework={svg:this.svg,svgElements:this.svgElements,options:this.options,groups:this.groups};var a=this;this.body.emitter.on("verticalDrag",function(){a.dom.lineContainer.style.top=a.body.domProps.scrollTop+"px"})}var n=i(1),s=i(7),r=i(29),a=i(54);o.prototype=new r,o.prototype.addGroup=function(t,e){this.groups.hasOwnProperty(t)||(this.groups[t]=e),this.amountOfGroups+=1},o.prototype.updateGroup=function(t,e){this.groups.hasOwnProperty(t)||(this.amountOfGroups+=1),this.groups[t]=e},o.prototype.removeGroup=function(t){this.groups.hasOwnProperty(t)&&(delete this.groups[t],this.amountOfGroups-=1)},o.prototype.setOptions=function(t){if(t){var e=!1;this.options.orientation!==t.orientation&&void 0!==t.orientation&&(e=!0);var i=["orientation","showMinorLabels","showMinorLines","showMajorLabels","icons","majorLinesOffset","minorLinesOffset","labelOffsetX","labelOffsetY","iconWidth","width","visible","data","left","right","alignZeros"];n.selectiveDeepExtend(i,this.options,t),this.minWidth=Number((""+this.options.width).replace("px","")),!0===e&&this.dom.frame&&(this.hide(),this.show())}},o.prototype._create=function(){var t=this.dom,e=this.svg,i=this.height,o=this.options;t.frame=document.createElement("div"),t.lineContainer=document.createElement("div"),e=document.createElementNS("http://www.w3.org/2000/svg","svg"),t.frame.style.setProperty("width",o.width),t.frame.style.setProperty("height",i),t.lineContainer.style.setProperty("width","100%"),t.lineContainer.style.setProperty("height",i),t.lineContainer.style.setProperty("position","relative"),e.style.setProperty("position","absolute"),e.style.setProperty("top","0px"),e.style.setProperty("height","100%"),e.style.setProperty("width","100%"),e.style.setProperty("display","block"),t.frame.appendChild(e)},o.prototype._redrawGroupIcons=function(){s.prepareElements(this.svgElements);var t=void 0,e=this.options.iconWidth,i=11.5;t="left"===this.options.orientation?4:this.width-e-4;var o=Object.keys(this.groups);o.sort(function(t,e){return t=0&&t._redrawLabel(o-2,i.val,e,"vis-y-axis vis-major",t.props.majorCharHeight),!0===t.master&&(n?t._redrawLine(o,e,"vis-grid vis-horizontal vis-major",t.options.majorLinesOffset,t.props.majorLineWidth):t.options.showMinorLines&&t._redrawLine(o,e,"vis-grid vis-horizontal vis-minor",t.options.minorLinesOffset,t.props.minorLineWidth))}),this.verifyResize(e)},o.prototype.verifyResize=function(t){var e=!1,i=0;void 0!==this.options[t].title&&void 0!==this.options[t].title.text&&(i=this.props.titleCharHeight);var o=!0===this.options.icons?Math.max(this.options.iconWidth,i)+this.options.labelOffsetX+15:i+this.options.labelOffsetX+15;return this.maxLabelSize>this.width-o&&!0===this.options.visible?(this.width=this.maxLabelSize+o,this.options.width=this.width+"px",s.cleanupElements(this.DOMelements.lines),s.cleanupElements(this.DOMelements.labels),this.redraw(),e=!0):this.maxLabelSizethis.minWidth?(this.width=Math.max(this.minWidth,this.maxLabelSize+o),this.options.width=this.width+"px",s.cleanupElements(this.DOMelements.lines),s.cleanupElements(this.DOMelements.labels),this.redraw(),e=!0):(s.cleanupElements(this.DOMelements.lines),s.cleanupElements(this.DOMelements.labels)),e},o.prototype.convertValue=function(t){return this.scale.convertValue(t)},o.prototype.screenToValue=function(t){return this.scale.screenToValue(t)},o.prototype._redrawLabel=function(t,e,i,o,n){var r=s.getDOMElement("div",this.DOMelements.labels,this.dom.frame);r.className=o,r.innerText=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.maxLabelSize6&&void 0!==arguments[6]&&arguments[6],a=arguments.length>7&&void 0!==arguments[7]&&arguments[7];if(this.majorSteps=[1,2,5,10],this.minorSteps=[.25,.5,1,2],this.customLines=null,this.containerHeight=n,this.majorCharHeight=s,this._start=t,this._end=e,this.scale=1,this.minorStepIdx=-1,this.magnitudefactor=1,this.determineScale(),this.zeroAlign=r,this.autoScaleStart=i,this.autoScaleEnd=o,this.formattingFunction=a,i||o){var h=this,d=function(t){var e=t-t%(h.magnitudefactor*h.minorSteps[h.minorStepIdx]);return t%(h.magnitudefactor*h.minorSteps[h.minorStepIdx])>h.magnitudefactor*h.minorSteps[h.minorStepIdx]*.5?e+h.magnitudefactor*h.minorSteps[h.minorStepIdx]:e};i&&(this._start-=2*this.magnitudefactor*this.minorSteps[this.minorStepIdx],this._start=d(this._start)),o&&(this._end+=this.magnitudefactor*this.minorSteps[this.minorStepIdx],this._end=d(this._end)),this.determineScale()}}var o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t};i.prototype.setCharHeight=function(t){this.majorCharHeight=t},i.prototype.setHeight=function(t){ -this.containerHeight=t},i.prototype.determineScale=function(){var t=this._end-this._start;this.scale=this.containerHeight/t;var e=this.majorCharHeight/this.scale,i=t>0?Math.round(Math.log(t)/Math.LN10):0;this.minorStepIdx=-1,this.magnitudefactor=Math.pow(10,i);var o=0;i<0&&(o=i);for(var n=!1,s=o;Math.abs(s)<=Math.abs(i);s++){this.magnitudefactor=Math.pow(10,s);for(var r=0;r=e){n=!0,this.minorStepIdx=r;break}}if(!0===n)break}},i.prototype.is_major=function(t){return t%(this.magnitudefactor*this.majorSteps[this.minorStepIdx])==0},i.prototype.getStep=function(){return this.magnitudefactor*this.minorSteps[this.minorStepIdx]},i.prototype.getFirstMajor=function(){var t=this.magnitudefactor*this.majorSteps[this.minorStepIdx];return this.convertValue(this._start+(t-this._start%t)%t)},i.prototype.formatValue=function(t){var e=t.toPrecision(5);return"function"==typeof this.formattingFunction&&(e=this.formattingFunction(t,!0)),"number"==typeof e?""+e:"string"==typeof e?e:t.toPrecision(5)},i.prototype.getLines=function(t){var e=[];if("object"===(void 0===t?"undefined":o(t))&&null!==t&&t.hasOwnProperty("values")&&t.values.length)for(var i=t.values,n=t.hasOwnProperty("labels")&&t.labels.length===t.values.length?t.labels:i,s=0;s1e-5;h+=r)h!=this._start&&e.push({major:this.is_major(h),y:this.convertValue(h),val:this.formatValue(h)});return e},i.prototype.followScale=function(t){var e=this.minorStepIdx,i=this._start,o=this._end,n=this,s=function(){n.magnitudefactor*=2},r=function(){n.magnitudefactor/=2};t.minorStepIdx<=1&&this.minorStepIdx<=1||t.minorStepIdx>1&&this.minorStepIdx>1||(t.minorStepIdxo+1e-5)r(),d=!1;else{if(!this.autoScaleStart&&this._start=0)){r(),d=!1;continue}console.warn("Can't adhere to given 'min' range, due to zeroalign")}this.autoScaleStart&&this.autoScaleEnd&&ue.x?1:-1})):this.itemsData=[]},o.prototype.getItems=function(){return 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","zIndex","excludeFromStacking","excludeFromLegend"];s.selectiveDeepExtend(e,this.options,t),"function"==typeof t.drawPoints&&(t.drawPoints={onRender:t.drawPoints}),s.mergeOptions(this.options,t,"interpolation"),s.mergeOptions(this.options,t,"drawPoints"),s.mergeOptions(this.options,t,"shaded"),t.interpolation&&"object"==n(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))}},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||t.visible,this.style=t.style,this.setOptions(t.options)},o.prototype.getLegend=function(t,e,i,o,n){if(void 0==i||null==i){i={svg:document.createElementNS("http://www.w3.org/2000/svg","svg"),svgElements:{},options:this.options,groups:[this]}}switch(void 0!=o&&null!=o||(o=0),void 0!=n&&null!=n||(n=.5*e),this.options.style){case"line":a.drawIcon(this,o,n,t,e,i);break;case"points":case"point":h.drawIcon(this,o,n,t,e,i);break;case"bar":r.drawIcon(this,o,n,t,e,i)}return{icon:i.svg,label:this.content,orientation:this.options.yAxisOrientation}},o.prototype.getYRange=function(t){for(var e=t[0].y,i=t[0].y,o=0;ot[o].y?t[o].y:e,i=i0){return 1==e.options.interpolation.enabled?o._catmullRom(t,e):o._linear(t)}},o.drawIcon=function(t,e,i,o,s,r){var a,h,d=.5*s,l=n.getSVGElement("rect",r.svgElements,r.svg);if(l.setAttributeNS(null,"x",e),l.setAttributeNS(null,"y",i-d),l.setAttributeNS(null,"width",o),l.setAttributeNS(null,"height",2*d),l.setAttributeNS(null,"class","vis-outline"),a=n.getSVGElement("path",r.svgElements,r.svg),a.setAttributeNS(null,"class",t.className),void 0!==t.style&&a.setAttributeNS(null,"style",t.style),a.setAttributeNS(null,"d","M"+e+","+i+" L"+(e+o)+","+i),1==t.options.shaded.enabled&&(h=n.getSVGElement("path",r.svgElements,r.svg),"top"==t.options.shaded.orientation?h.setAttributeNS(null,"d","M"+e+", "+(i-d)+"L"+e+","+i+" L"+(e+o)+","+i+" L"+(e+o)+","+(i-d)):h.setAttributeNS(null,"d","M"+e+","+i+" L"+e+","+(i+d)+" L"+(e+o)+","+(i+d)+"L"+(e+o)+","+i),h.setAttributeNS(null,"class",t.className+" vis-icon-fill"),void 0!==t.options.shaded.style&&""!==t.options.shaded.style&&h.setAttributeNS(null,"style",t.options.shaded.style)),1==t.options.drawPoints.enabled){var u={style:t.options.drawPoints.style,styles:t.options.drawPoints.styles,size:t.options.drawPoints.size,height:t.options.drawPoints.height,width:t.options.drawPoints.width,className:t.className};n.drawPoint(e+.5*o,i,u,r.svgElements,r.svg)}},o.drawShading=function(t,e,i,o){if(1==e.options.shaded.enabled){var s=Number(o.svg.style.height.replace("px","")),r=n.getSVGElement("path",o.svgElements,o.svg),a="L";1==e.options.interpolation.enabled&&(a="C");var h,d=0;d="top"==e.options.shaded.orientation?0:"bottom"==e.options.shaded.orientation?s:Math.min(Math.max(0,e.zeroPosition),s),isNaN(t[0][0])||isNaN(t[0][1])||"group"!=e.options.shaded.orientation||null==i||void 0==i?isNaN(t[0][0])||isNaN(t[0][1])||(h="M"+t[0][0]+","+t[0][1]+" "+this.serializePath(t,a,!1)+" V"+d+" H"+t[0][0]+" Z"):h="M"+t[0][0]+","+t[0][1]+" "+this.serializePath(t,a,!1)+" L"+i[i.length-1][0]+","+i[i.length-1][1]+" "+this.serializePath(i,a,!0)+i[0][0]+","+i[0][1]+" Z",r.setAttributeNS(null,"class",e.className+" vis-fill"),void 0!==e.options.shaded.style&&r.setAttributeNS(null,"style",e.options.shaded.style),h&&r.setAttributeNS(null,"d",h)}},o.draw=function(t,e,i){if(null!=t&&void 0!=t){var o=n.getSVGElement("path",i.svgElements,i.svg);o.setAttributeNS(null,"class",e.className),void 0!==e.style&&o.setAttributeNS(null,"style",e.style);var s="L";1==e.options.interpolation.enabled&&(s="C");var r=t[0][0],a=t[0][1];"number"!=typeof r||isNaN(r)||"number"!=typeof a||isNaN(a)||o.setAttributeNS(null,"d","M"+r+","+a+" "+this.serializePath(t,s,!1)),o.setAttributeNS(null,"row-id",e.group.value)}return o},o.serializePath=function(t,e,i){if(t.length<2)return"";var o=e;if(i)for(var n=t.length-2;n>0;n--)isNaN(t[n][0])||isNaN(t[n][1])||(o+=t[n][0]+","+t[n][1]+" ");else for(var n=1;n0&&(f=1/f),m=3*v*(v+y),m>0&&(m=1/m),a={screen_x:(-b*o.screen_x+c*n.screen_x+_*s.screen_x)*f,screen_y:(-b*o.screen_y+c*n.screen_y+_*s.screen_y)*f},h={screen_x:(g*n.screen_x+p*s.screen_x-b*r.screen_x)*m,screen_y:(g*n.screen_y+p*s.screen_y-b*r.screen_y)*m},0==a.screen_x&&0==a.screen_y&&(a=n),0==h.screen_x&&0==h.screen_y&&(h=s),x.push([a.screen_x,a.screen_y]),x.push([h.screen_x,h.screen_y]),x.push([s.screen_x,s.screen_y]);return x},o._linear=function(t){for(var e=[],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 tl;)c=Math.floor((c-1)/2),u+=u;if(void 0!==r&&void 0!==s)if(r!==s)this._redrawLabel(0,s,i,o,this.props.minorCharHeight),this._redrawLabel(p,r,i,o,this.props.minorCharHeight);else if(void 0!==h){var m=.5*e;this._redrawLabel(m,h||a,i,o,this.props.minorCharHeight)}if(c&&l>0)for(var v=Math.abs(s-r),y=u/v*(d-c*this.props.minorCharHeight),g=0;g0;g++)f+=u,p=p-y-this.props.minorCharHeight,this._redrawLabel(p,f,i,o,this.props.minorCharHeight)}},{key:"_getGroupScaleValues",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],o=void 0,n=void 0;if(t.itemsData&&t.itemsData.length>0)if(e)o=Math.max.apply(Math,t.itemsData.map(function(t){return t.referenceLine?t.y:t.maxValue})),n=Math.min.apply(Math,t.itemsData.map(function(t){return t.referenceLine?t.y:t.minValue}));else{var s=t.itemsData.map(function(t){return t.y});o=Math.max.apply(Math,i(s)),n=Math.min.apply(Math,i(s))}t&&t.group&&(Number.isInteger(t.group.maxValue)&&(o=t.group.maxValue),Number.isInteger(t.group.minValue)&&(n=t.group.minValue));var r=t.itemsData[0]&&t.itemsData[0].avgValue;return{maxValue:o,minValue:n,avgValue:_.isNumber(r)||_.isString(r)?r:"",referenceLine:t.itemsData.map(function(t){return t.referenceLine&&t.y})[0]}}},{key:"_renderCustomLabel",value:function(t){for(var e=this,i=t.lineHeight,o=t.orientation,n=t.labelClass,s=t.group,r=s.group.axisCustomLabel.length,a=r,h=i-this.props.minorCharHeight,d=Math.floor(h/this.props.minorCharHeight);a>d;)a=Math.floor((a-2)/2);var l=Math.floor(h/(a-1)),u=s.group.axisCustomLabel[0],c=s.group.axisCustomLabel[r-1],p=c.alternativeLabel?c.alternativeLabel:c.y,f=u.alternativeLabel?u.alternativeLabel:u.y;this._redrawLabel(h,p,o,n,this.props.minorCharHeight),this._redrawLabel(0,f,o,n,this.props.minorCharHeight),s.group.axisCustomLabel.slice().reverse().filter(function(t,e){return e>0&&e3&&void 0!==arguments[3]?arguments[3]:0,n="vis-grid vis-horizontal vis-timeline-chart-horizontal-line";switch(e.summary&&o>0&&(t=o),this._redrawLine(t,"left",n,this.props.width,this.props.majorLineWidth+this.props.width),e.group.type){case"arrow-avg":this._renderArrowAvgLine(t,i,n,e);break;default:this._renderDefaultLine(t,i,n,e)}}},{key:"_renderArrowAvgLine",value:function(t,e,i,o){if(o.itemsData&&o.itemsData.length>0){var n="vis-timeline-chart-guideline vis-timeline-chart-avg-type",s=i+" "+n+" vis-timeline-chart-max-value",r=i+" "+n+" vis-timeline-chart-average",a=i+" "+n+" vis-timeline-chart-min-value",h=this._getSupportLines(t,e),d=h.topLineY,l=h.middleLineY,u=h.bottomLineY;this._redrawLine(t-d,"left",s,0,this.props.majorLineWidth),this._redrawLine(t-l,"left",r,0,this.props.majorLineWidth),this._redrawLine(t-u,"left",a,0,this.props.majorLineWidth)}}},{key:"_renderDefaultLine",value:function(t,e,o,n){o+=" vis-timeline-chart-guideline vis-timeline-chart-default-type";var s=n.itemsData.map(function(t){return t.y}),r=n.itemsData[0]&&n.itemsData[0].avgValue?n.itemsData[0].avgValue:void 0;if(s.length>0){var a=this._getSupportLines(t,e),h=a.topLineY,d=a.middleLineY,l=a.bottomLineY;Math.max.apply(Math,i(s))===Math.min.apply(Math,i(s))||r?this._redrawLine(t-d,"left",o,0,this.props.majorLineWidth):(this._redrawLine(t-h,"left",o,0,this.props.majorLineWidth),this._redrawLine(t-l,"left",o,0,this.props.majorLineWidth))}}},{key:"_getSupportLines",value:function(t,e){var i=t-e;return{topLineY:i,middleLineY:i/2+this.props.minorCharHeight/2,bottomLineY:this.props.minorCharHeight}}}]),t}();t.exports=s},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}var n=function(){function t(t,e){for(var i=0;ie&&ts?s:t,e=null==e?s:e0){var d=function(){var a={};for(t._getRelevantData(h,a,s,r),t._applySampling(h,a),i=0;ie?t:e})},x={};for(i=0;i0)for(var M=w(k.map(function(t){return t.index})),S=1;S<=M;S++)!function(o){var n=k.filter(function(t){return t.index==o});n.length>0&&(delete x[h[i]],x.hasOwnProperty(h[i])||(x[h[i]]=c.calcPath(n,e)),c.drawShading(x[h[i]],e,void 0,t.framework))}(S);else c.drawShading(x[h[i]],e,void 0,t.framework)}u.draw(h,a,t.framework);var D=function(e,i,o,n){t.body.emitter.emit(e,{data:n,event:i,element:o})},E=function(i,o){x.hasOwnProperty(o)||(x[o]=c.calcPath(i,e));var n=i[0];n&&n.styleLine&&(e.style=n.styleLine);var s=c.draw(x[o],e,t.framework);"line"!==e.group.type&&"trend"!==e.group.type||(l.attachEvents(s,"mouseenter",a[o],function(t,e,i){return D("itemmouseenter",t,e,i)}),l.attachEvents(s,"mouseout",a[o],function(t,e,i){return D("itemmouseout",t,e,i)}),l.attachEvents(s,"click",a[o],function(t,e,i){return D("itemclick",t,e,i)})),"infusionrate"===e.group.type&&(l.attachEvents(s,"mouseenter",i,function(t,e,i){return D("itemmouseenter",t,e,i)}),l.attachEvents(s,"mouseout",i,function(t,e,i){return D("itemmouseout",t,e,i)}),l.attachEvents(s,"click",i,function(t,e,i){return D("itemclick",t,e,i)}))};for(i=0;i0)switch(e.options.style){case"line":case"trend":if(a[h[i]].filter(function(t){return void 0!==t.index&&0!==t.index}).length>0)for(var C=w(a[h[i]].map(function(t){return t.index})),S=1;S<=C;S++)!function(t){var e=a[h[i]].filter(function(e){return e.index==t});e.length>0&&(delete x[h[i]],E(e,h[i]))}(S);else E(a[h[i]],h[i]);case"point":case"points":if("point"==e.options.style||"points"==e.options.style||1==e.options.drawPoints.enabled){var T=p.draw(a[h[i]],e,t.framework);e.withTrend&&function(){var o=[],n=[],s=[];if(T.forEach(function(t){var e=t[0],i=t[2],r=t[1];e&&e.points&&e.points.length>3&&o.push({screen_x:e.points[3].x,screen_y:e.points[0].y}),i&&i.points&&i.points.length>3&&n.push({screen_x:i.points[3].x,screen_y:i.points[0].y}),r&&s.push({screen_x:r.normalizedPathSegList._list[0].x,screen_y:r.normalizedPathSegList._list[0].y+2})}),o&&n&&s){var r=a[h[i]].find(function(t){return 0==t.referenceLine});r&&r.styleLine&&(e.style=r.styleLine);var d=c.calcPath(o,e);c.draw(d,e,t.framework);var l=c.calcPath(n,e);c.draw(l,e,t.framework);var u=c.calcPath(s,e);c.draw(u,e,t.framework)}}(),l.attachEvents(T,"mouseenter",a[h[i]].filter(function(t){return!t.referenceLine}),function(t,e,i){return D("itemmouseenter",t,e,i)}),l.attachEvents(T,"mouseout",a[h[i]].filter(function(t){return!t.referenceLine}),function(t,e,i){return D("itemmouseout",t,e,i)}),l.attachEvents(T,"click",a[h[i]].filter(function(t){return!t.referenceLine}),function(t,e,i){return D("itemclick",t,e,i)})}}"infusionrate"!=e.group.type&&"bolus"!=e.group.type||f.drawBolus(a[h[i]],t.framework,t.body)}}();if("object"===(void 0===d?"undefined":a(d)))return d.v}}return l.cleanupElements(this.svgElements),!1}},{key:"setOptions",value:function(t){var e=this;if(t){var i=["events","height","graphHeight","style","dataAxis","groups"];void 0===t.graphHeight&&void 0!==t.height?(this.updateSVGheight=!0,this.updateSVGheightOnResize=!0):void 0!==this.body.domProps.centerContainer.height&&void 0!==t.graphHeight&&parseInt((t.graphHeight+"").replace("px",""))=2&&e.add(t[0].y)}),Array.from(e)},n.createSubGroups=function(t){var e={};return t.forEach(function(t){e.hasOwnProperty(t.index)?e[t.index].push(t):(e[t.index]=[],e[t.index].push(t))}),e},t.exports=n},function(t,e){Object.defineProperty(e,"__esModule",{value:!0});var i="string",o="boolean",n="number",s="object",r={configure:{enabled:{boolean:o},filter:{boolean:o,function:"function"},container:{dom:"dom"},__type__:{object:s,boolean:o,function:"function"}},yAxisOrientation:{string:["left","right"]},defaultGroup:{string:i},sort:{boolean:o},sampling:{boolean:o},stack:{boolean:o},graphHeight:{string:i,number:n},shaded:{enabled:{boolean:o},orientation:{string:["bottom","top","zero","group"]},groupId:{object:s},__type__:{boolean:o,object:s}},style:{string:["line","bar","points"]},barChart:{width:{number:n},minWidth:{number:n},sideBySide:{boolean:o},align:{string:["left","center","right"]},__type__:{object:s}},interpolation:{enabled:{boolean:o},parametrization:{string:["centripetal","chordal","uniform"]},alpha:{number:n},__type__:{object:s,boolean:o}},drawPoints:{enabled:{boolean:o},onRender:{function:"function"},size:{number:n},style:{string:["square","circle","trend","triangle-up","triangle-down","arrow-avg","partogram"]},__type__:{object:s,boolean:o,function:"function"}},dataAxis:{extraLineWidth:{number:n},labelOffsetY:{number:n},linesOffsetY:{number:n},linesOffsetX:{number:n},minorLinesOffset:{number:n},majorLinesOffset:{number:n},showMinorLabels:{boolean:o},showMajorLabels:{boolean:o},showMinorLines:{boolean:o},icons:{boolean:o},width:{string:i,number:n},visible:{boolean:o},alignZeros:{boolean:o},fontSize:{number:n},fontFamily:{string:i},data:{values:{array:"array"},labels:{array:"array"},__type__:{object:s}},left:{range:{min:{number:n},max:{number:n},__type__:{object:s}},format:{function:"function"},title:{text:{string:i,number:n},style:{string:i},__type__:{object:s}},__type__:{object:s}},right:{range:{min:{number:n},max:{number:n},__type__:{object:s}},format:{function:"function"},title:{text:{string:i,number:n},style:{string:i},__type__:{object:s}},__type__:{object:s}},__type__:{object:s}},legend:{enabled:{boolean:o},icons:{boolean:o},left:{visible:{boolean:o},position:{string:["top-right","bottom-right","top-left","bottom-left"]},__type__:{object:s}},right:{visible:{boolean:o},position:{string:["top-right","bottom-right","top-left","bottom-left"]},__type__:{object:s}},__type__:{object:s,boolean:o}},groups:{visibility:{any:"any"},__type__:{object:s}},autoResize:{boolean:o},throttleRedraw:{number:n},clickToUse:{boolean:o},end:{number:n,date:"date",string:i,moment:"moment"},format:{minorLabels:{millisecond:{string:i,undefined:"undefined"},second:{string:i,undefined:"undefined"},minute:{string:i,undefined:"undefined"},hour:{string:i,undefined:"undefined"},weekday:{string:i,undefined:"undefined"},day:{string:i,undefined:"undefined"},month:{string:i,undefined:"undefined"},year:{string:i,undefined:"undefined"},__type__:{object:s}},majorLabels:{millisecond:{string:i,undefined:"undefined"},second:{string:i,undefined:"undefined"},minute:{string:i,undefined:"undefined"},hour:{string:i,undefined:"undefined"},weekday:{string:i,undefined:"undefined"},day:{string:i,undefined:"undefined"},month:{string:i,undefined:"undefined"},year:{string:i,undefined:"undefined"},__type__:{object:s}},__type__:{object:s}},moment:{function:"function"},height:{string:i,number:n},hiddenDates:{start:{date:"date",number:n,string:i,moment:"moment"},end:{date:"date",number:n,string:i,moment:"moment"},repeat:{string:i},__type__:{object:s,array:"array"}},locale:{string:i},locales:{__any__:{any:"any"},__type__:{object:s}},max:{date:"date",number:n,string:i,moment:"moment"},maxHeight:{number:n,string:i},maxMinorChars:{number:n},gap:{number:n},itemsFit:{array:"array"},min:{date:"date",number:n,string:i,moment:"moment"},minHeight:{number:n,string:i},moveable:{boolean:o},multiselect:{boolean:o},orientation:{string:i},showCurrentTime:{boolean:o},showMajorLabels:{boolean:o},showMinorLabels:{boolean:o},showMinorLines:{boolean:o},start:{date:"date",number:n,string:i,moment:"moment"},timeAxis:{scale:{string:i,undefined:"undefined"},step:{number:n,undefined:"undefined"},__type__:{object:s}},width:{string:i,number:n},zoomable:{boolean:o},zoomKey:{string:["ctrlKey","altKey","metaKey",""]},zoomMax:{number:n},zoomMin:{number:n},zIndex:{number:n},__type__:{object:s}},a={global:{sort:!0,sampling:!0,stack:!1,shaded:{enabled:!1,orientation:["zero","top","bottom","group"]},style:["line","bar","points"],barChart:{width:[50,5,100,5],minWidth:[50,5,100,5],sideBySide:!1,align:["left","center","right"]},interpolation:{enabled:!0,parametrization:["centripetal","chordal","uniform"]},drawPoints:{enabled:!0,size:[6,2,30,1],style:["square","circle","arrow-avg","partogram"]},dataAxis:{minorLinesOffset:0,showMinorLabels:!0,showMinorLines:!0,showMajorLabels:!0,icons:!1,width:[40,0,200,1],visible:!0,alignZeros:!0,left:{title:{text:"",style:""}},right:{title:{text:"",style:""}}},legend:{enabled:!1,icons:!0,left:{visible:!0,position:["top-right","bottom-right","top-left","bottom-left"]},right:{visible:!0,position:["top-right","bottom-right","top-left","bottom-left"]}},autoResize:!0,throttleRedraw:[10,0,1e3,10],clickToUse:!1,end:"",format:{minorLabels:{millisecond:"SSS",second:"s",minute:"HH:mm",hour:"HH:mm",weekday:"ddd D",day:"D",month:"MMM",year:"YYYY"},majorLabels:{millisecond:"HH:mm:ss",second:"D MMMM HH:mm",minute:"ddd D MMMM",hour:"ddd D MMMM",weekday:"MMMM YYYY",day:"MMMM YYYY",month:"YYYY",year:""}},height:"",locale:"",max:"",maxHeight:"",maxMinorChars:[7,0,20,1],min:"",minHeight:"",moveable:!0,orientation:["both","bottom","top"],showCurrentTime:!1,showMajorLabels:!0,showMinorLabels:!0,showMinorLines:!0,start:"",width:"100%",zoomable:!0,zoomKey:["ctrlKey","altKey","metaKey",""],zoomMax:[31536e10,10,31536e10,1],zoomMin:[10,10,31536e10,1],zIndex:0}};e.allOptions=r,e.configureOptions=a},function(t,e,i){function o(t){return t&&t.__esModule?t:{default:t}}function n(t,e,i){var o=this;if(!(this instanceof n))throw new SyntaxError("Constructor must be called with the new operator");this.options={},this.defaultOptions={locale:"en",locales:W,clickToUse:!1},F.extend(this.options,this.defaultOptions),this.body={container:t,nodes:{},nodeIndices:[],edges:{},edgeIndices:[],emitter:{on:this.on.bind(this),off:this.off.bind(this),emit:this.emit.bind(this),once:this.once.bind(this)},eventListeners:{onTap:function(){},onTouch:function(){},onDoubleTap:function(){},onHold:function(){},onDragStart:function(){},onDrag:function(){},onDragEnd:function(){},onMouseWheel:function(){},onPinch:function(){},onMouseMove:function(){},onRelease:function(){},onContext:function(){}},data:{nodes:null,edges:null},functions:{createNode:function(){},createEdge:function(){},getPointer:function(){}},modules:{},view:{scale:1,translation:{x:0,y:0}}},this.bindEventListeners(),this.images=new r.default(function(){return o.body.emitter.emit("_requestRedraw")}),this.groups=new h.default,this.canvas=new _.default(this.body),this.selectionHandler=new S.default(this.body,this.canvas),this.interactionHandler=new O.default(this.body,this.canvas,this.selectionHandler),this.view=new x.default(this.body,this.canvas),this.renderer=new g.default(this.body,this.canvas),this.physics=new f.default(this.body),this.layoutEngine=new E.default(this.body),this.clustering=new v.default(this.body),this.manipulation=new T.default(this.body,this.canvas,this.selectionHandler),this.nodesHandler=new l.default(this.body,this.images,this.groups,this.layoutEngine),this.edgesHandler=new c.default(this.body,this.images,this.groups),this.body.modules.kamadaKawai=new z.default(this.body,150,.05),this.body.modules.clustering=this.clustering,this.canvas._create(),this.setOptions(i),this.setData(e)}var s=i(68),r=o(s),a=i(70),h=o(a),d=i(71),l=o(d),u=i(91),c=o(u),p=i(100),f=o(p),m=i(112),v=o(m),y=i(115),g=o(y),b=i(116),_=o(b),w=i(117),x=o(w),k=i(118),O=o(k),M=i(121),S=o(M),D=i(122),E=o(D),C=i(123),T=o(C),P=i(21),N=o(P),I=i(27),L=o(I),A=i(124),R=i(125),z=o(R);i(127);var j=i(13),F=i(1),B=(i(9),i(11),i(128)),H=i(129),Y=i(34),W=i(130);j(n.prototype),n.prototype.setOptions=function(t){var e=this;if(void 0!==t){!0===L.default.validate(t,A.allOptions)&&console.log("%cErrors have been found in the supplied options object.",I.printStyle);var i=["locale","locales","clickToUse"];if(F.selectiveDeepExtend(i,this.options,t),t=this.layoutEngine.setOptions(t.layout,t),this.canvas.setOptions(t),this.groups.setOptions(t.groups),this.nodesHandler.setOptions(t.nodes),this.edgesHandler.setOptions(t.edges),this.physics.setOptions(t.physics),this.manipulation.setOptions(t.manipulation,t,this.options),this.interactionHandler.setOptions(t.interaction),this.renderer.setOptions(t.interaction),this.selectionHandler.setOptions(t.interaction),void 0!==t.groups&&this.body.emitter.emit("refreshNodes"),"configure"in t&&(this.configurator||(this.configurator=new N.default(this,this.body.container,A.configureOptions,this.canvas.pixelRatio)),this.configurator.setOptions(t.configure)),this.configurator&&!0===this.configurator.options.enabled){var o={nodes:{},edges:{},layout:{},interaction:{},manipulation:{},physics:{},global:{}};F.deepExtend(o.nodes,this.nodesHandler.options),F.deepExtend(o.edges,this.edgesHandler.options),F.deepExtend(o.layout,this.layoutEngine.options),F.deepExtend(o.interaction,this.selectionHandler.options),F.deepExtend(o.interaction,this.renderer.options),F.deepExtend(o.interaction,this.interactionHandler.options),F.deepExtend(o.manipulation,this.manipulation.options),F.deepExtend(o.physics,this.physics.options),F.deepExtend(o.global,this.canvas.options),F.deepExtend(o.global,this.options),this.configurator.setModuleOptions(o)}void 0!==t.clickToUse?!0===t.clickToUse?void 0===this.activator&&(this.activator=new Y(this.canvas.frame),this.activator.on("change",function(){e.body.emitter.emit("activate")})):(void 0!==this.activator&&(this.activator.destroy(),delete this.activator),this.body.emitter.emit("activate")):this.body.emitter.emit("activate"),this.canvas.setSize(),this.body.emitter.emit("startSimulation")}},n.prototype._updateVisibleIndices=function(){var t=this.body.nodes,e=this.body.edges;this.body.nodeIndices=[],this.body.edgeIndices=[];for(var i in t)t.hasOwnProperty(i)&&!1===t[i].options.hidden&&this.body.nodeIndices.push(t[i].id);for(var o in e)e.hasOwnProperty(o)&&!1===e[o].options.hidden&&this.body.edgeIndices.push(e[o].id)},n.prototype.bindEventListeners=function(){var t=this;this.body.emitter.on("_dataChanged",function(){t._updateVisibleIndices(),t.physics.initPhysicsData(),t.body.emitter.emit("_requestRedraw"),t.body.emitter.emit("_dataUpdated")}),this.body.emitter.on("_dataUpdated",function(){t._updateValueRange(t.body.nodes),t._updateValueRange(t.body.edges),t.body.emitter.emit("startSimulation"),t.body.emitter.emit("_requestRedraw")})},n.prototype.setData=function(t){if(this.body.emitter.emit("resetPhysics"),this.body.emitter.emit("_resetData"),this.selectionHandler.unselectAll(),t&&t.dot&&(t.nodes||t.edges))throw new SyntaxError('Data must contain either parameter "dot" or parameter pair "nodes" and "edges", but not both.');if(this.setOptions(t&&t.options),t&&t.dot){console.log("The dot property has been depricated. Please use the static convertDot method to convert DOT into vis.network format and use the normal data format with nodes and edges. This converter is used like this: var data = vis.network.convertDot(dotString);");var e=B.DOTToGraph(t.dot);return void this.setData(e)}if(t&&t.gephi){console.log("The gephi property has been depricated. Please use the static convertGephi method to convert gephi into vis.network format and use the normal data format with nodes and edges. This converter is used like this: var data = vis.network.convertGephi(gephiJson);");var i=H.parseGephi(t.gephi);return void this.setData(i)}this.nodesHandler.setData(t&&t.nodes,!0),this.edgesHandler.setData(t&&t.edges,!0),this.body.emitter.emit("_dataChanged"),this.body.emitter.emit("_dataLoaded"),this.body.emitter.emit("initPhysics")},n.prototype.destroy=function(){this.body.emitter.emit("destroy"),this.body.emitter.off(),this.off(),delete this.groups,delete this.canvas,delete this.selectionHandler,delete this.interactionHandler,delete this.view,delete this.renderer,delete this.physics,delete this.layoutEngine,delete this.clustering,delete this.manipulation,delete this.nodesHandler,delete this.edgesHandler,delete this.configurator,delete this.images;for(var t in this.body.nodes)delete this.body.nodes[t];for(var e in this.body.edges)delete this.body.edges[e] -;F.recursiveDOMDelete(this.body.container)},n.prototype._updateValueRange=function(t){var e,i=void 0,o=void 0,n=0;for(e in t)if(t.hasOwnProperty(e)){var s=t[e].getValue();void 0!==s&&(i=void 0===i?s:Math.min(s,i),o=void 0===o?s:Math.max(s,o),n+=s)}if(void 0!==i&&void 0!==o)for(e in t)t.hasOwnProperty(e)&&t[e].setValueRange(i,o,n)},n.prototype.isActive=function(){return!this.activator||this.activator.active},n.prototype.setSize=function(){return this.canvas.setSize.apply(this.canvas,arguments)},n.prototype.canvasToDOM=function(){return this.canvas.canvasToDOM.apply(this.canvas,arguments)},n.prototype.DOMtoCanvas=function(){return this.canvas.DOMtoCanvas.apply(this.canvas,arguments)},n.prototype.findNode=function(){return this.clustering.findNode.apply(this.clustering,arguments)},n.prototype.isCluster=function(){return this.clustering.isCluster.apply(this.clustering,arguments)},n.prototype.openCluster=function(){return this.clustering.openCluster.apply(this.clustering,arguments)},n.prototype.cluster=function(){return this.clustering.cluster.apply(this.clustering,arguments)},n.prototype.getNodesInCluster=function(){return this.clustering.getNodesInCluster.apply(this.clustering,arguments)},n.prototype.clusterByConnection=function(){return this.clustering.clusterByConnection.apply(this.clustering,arguments)},n.prototype.clusterByHubsize=function(){return this.clustering.clusterByHubsize.apply(this.clustering,arguments)},n.prototype.clusterOutliers=function(){return this.clustering.clusterOutliers.apply(this.clustering,arguments)},n.prototype.getSeed=function(){return this.layoutEngine.getSeed.apply(this.layoutEngine,arguments)},n.prototype.enableEditMode=function(){return this.manipulation.enableEditMode.apply(this.manipulation,arguments)},n.prototype.disableEditMode=function(){return this.manipulation.disableEditMode.apply(this.manipulation,arguments)},n.prototype.addNodeMode=function(){return this.manipulation.addNodeMode.apply(this.manipulation,arguments)},n.prototype.editNode=function(){return this.manipulation.editNode.apply(this.manipulation,arguments)},n.prototype.editNodeMode=function(){return console.log("Deprecated: Please use editNode instead of editNodeMode."),this.manipulation.editNode.apply(this.manipulation,arguments)},n.prototype.addEdgeMode=function(){return this.manipulation.addEdgeMode.apply(this.manipulation,arguments)},n.prototype.editEdgeMode=function(){return this.manipulation.editEdgeMode.apply(this.manipulation,arguments)},n.prototype.deleteSelected=function(){return this.manipulation.deleteSelected.apply(this.manipulation,arguments)},n.prototype.getPositions=function(){return this.nodesHandler.getPositions.apply(this.nodesHandler,arguments)},n.prototype.storePositions=function(){return this.nodesHandler.storePositions.apply(this.nodesHandler,arguments)},n.prototype.moveNode=function(){return this.nodesHandler.moveNode.apply(this.nodesHandler,arguments)},n.prototype.getBoundingBox=function(){return this.nodesHandler.getBoundingBox.apply(this.nodesHandler,arguments)},n.prototype.getConnectedNodes=function(t){return void 0!==this.body.nodes[t]?this.nodesHandler.getConnectedNodes.apply(this.nodesHandler,arguments):this.edgesHandler.getConnectedNodes.apply(this.edgesHandler,arguments)},n.prototype.getConnectedEdges=function(){return this.nodesHandler.getConnectedEdges.apply(this.nodesHandler,arguments)},n.prototype.startSimulation=function(){return this.physics.startSimulation.apply(this.physics,arguments)},n.prototype.stopSimulation=function(){return this.physics.stopSimulation.apply(this.physics,arguments)},n.prototype.stabilize=function(){return this.physics.stabilize.apply(this.physics,arguments)},n.prototype.getSelection=function(){return this.selectionHandler.getSelection.apply(this.selectionHandler,arguments)},n.prototype.setSelection=function(){return this.selectionHandler.setSelection.apply(this.selectionHandler,arguments)},n.prototype.getSelectedNodes=function(){return this.selectionHandler.getSelectedNodes.apply(this.selectionHandler,arguments)},n.prototype.getSelectedEdges=function(){return this.selectionHandler.getSelectedEdges.apply(this.selectionHandler,arguments)},n.prototype.getNodeAt=function(){var t=this.selectionHandler.getNodeAt.apply(this.selectionHandler,arguments);return void 0!==t&&void 0!==t.id?t.id:t},n.prototype.getEdgeAt=function(){var t=this.selectionHandler.getEdgeAt.apply(this.selectionHandler,arguments);return void 0!==t&&void 0!==t.id?t.id:t},n.prototype.selectNodes=function(){return this.selectionHandler.selectNodes.apply(this.selectionHandler,arguments)},n.prototype.selectEdges=function(){return this.selectionHandler.selectEdges.apply(this.selectionHandler,arguments)},n.prototype.unselectAll=function(){this.selectionHandler.unselectAll.apply(this.selectionHandler,arguments),this.redraw()},n.prototype.redraw=function(){return this.renderer.redraw.apply(this.renderer,arguments)},n.prototype.getScale=function(){return this.view.getScale.apply(this.view,arguments)},n.prototype.getViewPosition=function(){return this.view.getViewPosition.apply(this.view,arguments)},n.prototype.fit=function(){return this.view.fit.apply(this.view,arguments)},n.prototype.moveTo=function(){return this.view.moveTo.apply(this.view,arguments)},n.prototype.focus=function(){return this.view.focus.apply(this.view,arguments)},n.prototype.releaseNode=function(){return this.view.releaseNode.apply(this.view,arguments)},n.prototype.getOptionsFromConfigurator=function(){var t={};return this.configurator&&(t=this.configurator.getOptions.apply(this.configurator)),t},t.exports=n},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;i2&&this.initialized()){e*=.5;for(var r=0;e>2&&r=this.NUM_ITERATIONS&&(r=this.NUM_ITERATIONS-1);var a=this.coordinates[r];t.drawImage(this.canvas,a[0],a[1],a[2],a[3],i,o,n,s)}else this._isImageOk()&&t.drawImage(this.image,i,o,n,s)}},{key:"_isImageOk",value:function(t){var t=this.image;return!!t.complete&&(void 0===t.naturalWidth||0!==t.naturalWidth)}}]),t}();e.default=n},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;i0){var i=this.groupIndex%this.groupsArray.length;this.groupIndex++,e={},e.color=this.groups[this.groupsArray[i]],this.groups[t]=e}else{var o=this.defaultIndex%this.defaultGroups.length;this.defaultIndex++,e={},e.color=this.defaultGroups[o],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},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;i1&&void 0!==arguments[1]&&arguments[1],i=this.body.data.nodes;if(t instanceof u||t instanceof c)this.body.data.nodes=t;else if(Array.isArray(t))this.body.data.nodes=new u,this.body.data.nodes.add(t);else{if(t)throw new TypeError("Array or DataSet expected");this.body.data.nodes=new u}if(i&&l.forEach(this.nodesListeners,function(t,e){i.off(e,t)}),this.body.nodes={},this.body.data.nodes){var o=this;l.forEach(this.nodesListeners,function(t,e){o.body.data.nodes.on(e,t)});var n=this.body.data.nodes.getIds();this.add(n,!0)}!1===e&&this.body.emitter.emit("_dataChanged")}},{key:"add",value:function(t){for(var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=void 0,o=[],n=0;n1&&void 0!==arguments[1]?arguments[1]:a.default)(t,this.body,this.images,this.groups,this.options)}},{key:"refresh",value:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],e=this.body.nodes;for(var i in e){var o=void 0;e.hasOwnProperty(i)&&(o=e[i]);var n=this.body.data.nodes._data[i];void 0!==o&&void 0!==n&&(!0===t&&o.setOptions({x:null,y:null}),o.setOptions({fixed:!1}),o.setOptions(n))}}},{key:"getPositions",value:function(t){var e={};if(void 0!==t){if(!0===Array.isArray(t)){for(var i=0;i0&&this.body.emitter.emit("_physicsUpdate",{type:"node",id:this.id,options:i})}},{key:"setY",value:function(t){this._y=t}},{key:"attachEdge",value:function(t){-1===this.edges.indexOf(t)&&this.edges.push(t)}},{key:"detachEdge",value:function(t){var e=this.edges.indexOf(t);-1!=e&&this.edges.splice(e,1)}},{key:"setOptions",value:function(e){var i=this.options.shape;if(e){if(void 0!==e.id&&(this.id=e.id),void 0===this.id)throw"Node must have an id";if(void 0!==e.x&&(null===e.x?(this.x=void 0,this.predefinedPosition=!1):(this.x=parseInt(e.x),this.predefinedPosition=!0)),void 0!==e.y&&(null===e.y?(this.y=void 0,this.predefinedPosition=!1):(this.y=parseInt(e.y),this.predefinedPosition=!0)),void 0!==e.size&&(this.baseSize=e.size),void 0!==e.value&&(e.value=parseFloat(e.value)),"number"==typeof e.group||"string"==typeof e.group&&""!=e.group){var o=this.grouplist.get(e.group);z.deepExtend(this.options,o),this.options.color=z.parseColor(this.options.color)}var n=t.parseOptions(this.options,e,!0,this.globalOptions);if(void 0!==this.options.image){if(!this.imagelist)throw"No imagelist provided";this.imageObj=this.imagelist.load(this.options.image,this.options.brokenImage,this.id)}return this.updateLabelModule(),this.updateShape(i),void 0!==e.mass&&(this.options.mass=e.mass,n.mass=e.mass),void 0!==e.physics&&(this.options.physics=e.physics,n.physics=e.physics),this.sendPhysicsUpdates&&Object.keys(n).length>0&&this.body.emitter.emit("_physicsUpdate",{type:"node",id:this.id,options:n}),void 0!==e.hidden}}},{key:"updateLabelModule",value:function(){void 0!==this.options.label&&null!==this.options.label||(this.options.label=""),this.labelModule.setOptions(this.options,!0),void 0!==this.labelModule.baseSize&&(this.baseFontSize=this.labelModule.baseSize)}},{key:"updateShape",value:function(t){if(t===this.options.shape&&this.shape)this.shape.setOptions(this.options,this.imageObj);else switch(this.options.shape){case"box":this.shape=new d.default(this.options,this.body,this.labelModule);break;case"circle":this.shape=new u.default(this.options,this.body,this.labelModule);break;case"circularImage":this.shape=new p.default(this.options,this.body,this.labelModule,this.imageObj);break;case"database":this.shape=new m.default(this.options,this.body,this.labelModule);break;case"diamond":this.shape=new y.default(this.options,this.body,this.labelModule);break;case"dot":this.shape=new b.default(this.options,this.body,this.labelModule);break;case"ellipse":this.shape=new w.default(this.options,this.body,this.labelModule);break;case"icon":this.shape=new k.default(this.options,this.body,this.labelModule);break;case"image":this.shape=new M.default(this.options,this.body,this.labelModule,this.imageObj);break;case"square":this.shape=new D.default(this.options,this.body,this.labelModule);break;case"star":this.shape=new C.default(this.options,this.body,this.labelModule);break;case"text":this.shape=new P.default(this.options,this.body,this.labelModule);break;case"triangle":this.shape=new I.default(this.options,this.body,this.labelModule);break;case"triangleDown":this.shape=new A.default(this.options,this.body,this.labelModule);break;default:this.shape=new w.default(this.options,this.body,this.labelModule)}this._reset()}},{key:"select",value:function(){this.selected=!0,this._reset()}},{key:"unselect",value:function(){this.selected=!1,this._reset()}},{key:"_reset",value:function(){this.shape.width=void 0,this.shape.height=void 0}},{key:"getTitle",value:function(){return this.options.title}},{key:"distanceToBorder",value:function(t,e){return this.shape.distanceToBorder(t,e)}},{key:"isFixed",value:function(){return this.options.fixed.x&&this.options.fixed.y}},{key:"isSelected",value:function(){return this.selected}},{key:"getValue",value:function(){return this.options.value}},{key:"setValueRange",value:function(t,e,i){if(void 0!==this.options.value){var o=this.options.scaling.customScalingFunction(t,e,i,this.options.value),n=this.options.scaling.max-this.options.scaling.min;if(!0===this.options.scaling.label.enabled){var s=this.options.scaling.label.max-this.options.scaling.label.min;this.options.font.size=this.options.scaling.label.min+o*s}this.options.size=this.options.scaling.min+o*n}else this.options.size=this.baseSize,this.options.font.size=this.baseFontSize;this.updateLabelModule()}},{key:"draw",value:function(t){this.shape.draw(t,this.x,this.y,this.selected,this.hover)}},{key:"updateBoundingBox",value:function(t){this.shape.updateBoundingBox(this.x,this.y,t)}},{key:"resize",value:function(t){this.shape.resize(t,this.selected)}},{key:"isOverlappingWith",value:function(t){return this.shape.leftt.left&&this.shape.topt.top}},{key:"isBoundingBoxOverlappingWith",value:function(t){return this.shape.boundingBox.leftt.left&&this.shape.boundingBox.topt.top}},{key:"x",get:function(){return this._x},set:function(t){this._x=t,this.body.emitter.emit("_positionUpdate",{id:this.id,x:this._x,y:this._y})}},{key:"y",get:function(){return this._y},set:function(t){this._y=t,this.body.emitter.emit("_positionUpdate",{id:this.id,x:this._x,y:this._y})}}],[{key:"parseOptions",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},n=["color","font","fixed","shadow"],s={};if(z.selectiveNotDeepExtend(n,t,e,i),z.mergeOptions(t,e,"shadow",i,o),void 0!==e.color&&null!==e.color){var r=z.parseColor(e.color);z.fillIfDefined(t.color,r)}else!0===i&&null===e.color&&(t.color=z.bridgeObject(o.color));return void 0!==e.fixed&&null!==e.fixed&&("boolean"==typeof e.fixed?t.fixed.x===e.fixed&&t.fixed.y===e.fixed||(t.fixed.x=e.fixed,t.fixed.y=e.fixed,s.fixed={x:e.fixed,y:e.fixed}):(void 0!==e.fixed.x&&"boolean"==typeof e.fixed.x&&t.fixed.x!==e.fixed.x&&(t.fixed.x=e.fixed.x,z.deepExtend(s,{fixed:{x:e.fixed.x}})),void 0!==e.fixed.y&&"boolean"==typeof e.fixed.y&&t.fixed.y!==e.fixed.y&&(t.fixed.y=e.fixed.y,z.deepExtend(s,{fixed:{y:e.fixed.y}})))),void 0!==e.font&&null!==e.font?a.default.parseOptions(t.font,e):!0===i&&null===e.font&&(t.font=z.bridgeObject(o.font)),void 0!==e.scaling&&z.mergeOptions(t.scaling,e.scaling,"label",i,o.scaling),s}}]),t}();e.default=j},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(t){n=!0,s=t}finally{try{!o&&a.return&&a.return()}finally{if(n)throw s}}return i}return function(e,i){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},r=function(){function t(t,e){for(var i=0;i2&&void 0!==arguments[2]&&arguments[2];o(this,t),this.body=e,this.pointToSelf=!1,this.baseSize=void 0,this.fontOptions={},this.setOptions(i),this.size={top:0,left:0,width:0,height:0,yLine:0},this.isEdgeLabel=n}return r(t,[{key:"setOptions",value:function(e){var i=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.nodeOptions=e,this.fontOptions=a.deepExtend({},e.font,!0),void 0!==e.label&&(this.labelDirty=!0),void 0!==e.font&&(t.parseOptions(this.fontOptions,e,i),"string"==typeof e.font?this.baseSize=this.fontOptions.size:"object"===s(e.font)&&void 0!==e.font.size&&(this.baseSize=e.font.size))}},{key:"draw",value:function(t,e,i,o){var n=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"middle";if(void 0!==this.nodeOptions.label){var s=this.fontOptions.size*this.body.view.scale;this.nodeOptions.label&&s4&&void 0!==arguments[4]?arguments[4]:"middle",r=this.fontOptions.size,a=r*this.body.view.scale;a>=this.nodeOptions.scaling.label.maxVisible&&(r=Number(this.nodeOptions.scaling.label.maxVisible)/this.body.view.scale);var h=this.size.yLine,d=this._getColor(a),l=n(d,2),u=l[0],c=l[1],p=this._setAlignment(t,i,h,s),f=n(p,2);i=f[0],h=f[1],t.font=(e&&this.nodeOptions.labelHighlightBold?"bold ":"")+r+"px "+this.fontOptions.face,t.fillStyle=u,this.isEdgeLabel||"left"!==this.fontOptions.align?t.textAlign="center":(t.textAlign=this.fontOptions.align,i-=.5*this.size.width),this.fontOptions.strokeWidth>0&&(t.lineWidth=this.fontOptions.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(this.isEdgeLabel&&"horizontal"!==this.fontOptions.align&&!1===this.pointToSelf){e=0,i=0;"top"===this.fontOptions.align?(t.textBaseline="alphabetic",i-=4):"bottom"===this.fontOptions.align?(t.textBaseline="hanging",i+=4):t.textBaseline="middle"}else t.textBaseline=o;return[e,i]}},{key:"_getColor",value:function(t){var e=this.fontOptions.color||"#000000",i=this.fontOptions.strokeColor||"#ffffff";if(t<=this.nodeOptions.scaling.label.drawThreshold){var o=Math.max(0,Math.min(1,1-(this.nodeOptions.scaling.label.drawThreshold-t)));e=a.overrideOpacity(e,o),i=a.overrideOpacity(i,o)}return[e,i]}},{key:"getTextSize",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return{width:this._processLabel(t,e),height:this.fontOptions.size*this.lineCount,lineCount:this.lineCount}}},{key:"calculateLabelSize",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,n=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"middle";!0===this.labelDirty&&(this.size.width=this._processLabel(t,e)),this.size.height=this.fontOptions.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.fontOptions.size,"hanging"===n&&(this.size.top+=.5*this.fontOptions.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.nodeOptions.label){o=String(this.nodeOptions.label).split("\n"),n=o.length,t.font=(e&&this.nodeOptions.labelHighlightBold?"bold ":"")+this.fontOptions.size+"px "+this.fontOptions.face,i=t.measureText(o[0]).width;for(var s=1;si?r:i}}return this.lines=o,this.lineCount=n,i}}],[{key:"parseOptions",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]&&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"===s(e.font)&&a.fillIfDefined(t,e.font,i);t.size=Number(t.size)}}]),t}();e.default=h},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}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&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0&&(this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t)),t.restore(),this.updateBoundingBox(e,i,t,o),this.labelModule.draw(t,e,i,o)}},{key:"updateBoundingBox",value:function(t,e,i,o){this.resize(i,o),this.left=t-.5*this.width,this.top=e-.5*this.height;var n=this.options.shapeProperties.borderRadius;this.boundingBox.left=this.left-n,this.boundingBox.top=this.top-n,this.boundingBox.bottom=this.top+this.height+n,this.boundingBox.right=this.left+this.width+n}},{key:"distanceToBorder",value:function(t,e){this.resize(t);var i=this.options.borderWidth;return Math.min(Math.abs(this.width/2/Math.cos(e)),Math.abs(this.height/2/Math.sin(e)))+i}}]),e}(h.default);e.default=d},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;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,i=2*this.options.size*o):(e=this.imageObj.width,i=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,h=(o?a:r)/this.body.view.scale;t.lineWidth=Math.min(this.width,h),t.strokeStyle=o?this.options.color.highlight.border:n?this.options.color.hover.border:this.options.color.border,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.save(),h>0&&(this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t)),t.restore()}},{key:"_drawImageAtPosition",value:function(t){if(0!=this.imageObj.width){t.globalAlpha=1,this.enableShadow(t);var e=1;!0===this.options.shapeProperties.interpolation&&(e=this.imageObj.width/this.width/this.body.view.scale),this.imageObj.drawImageAtPosition(t,e,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}(h.default);e.default=d},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}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&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0&&(this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t)),t.restore(),this.updateBoundingBox(e,i,t,o),this.labelModule.draw(t,e,i,o)}},{key:"updateBoundingBox",value:function(t,e,i,o){this.resize(i,o),this.left=t-.5*this.width,this.top=e-.5*this.height,this.boundingBox.left=this.left,this.boundingBox.top=this.top,this.boundingBox.bottom=this.top+this.height,this.boundingBox.right=this.left+this.width}},{key:"distanceToBorder",value:function(t,e){return this._distanceToBorder(t,e)}}]),e}(h.default);e.default=d},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}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&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0&&(this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t)),t.restore(),void 0!==this.options.label){var l=n+.5*this.height+3;this.labelModule.draw(t,o,l,s,"hanging")}this.updateBoundingBox(o,n)}},{key:"updateBoundingBox",value:function(t,e){this.boundingBox.top=e-this.options.size,this.boundingBox.left=t-this.options.size,this.boundingBox.right=t+this.options.size,this.boundingBox.bottom=e+this.options.size,void 0!==this.options.label&&this.labelModule.size.width>0&&(this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelModule.size.height+3))}}]),e}(h.default);e.default=d},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}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&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0&&(this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t)),t.restore(),this.updateBoundingBox(e,i,t,o),this.labelModule.draw(t,e,i,o)}},{key:"updateBoundingBox",value:function(t,e,i,o){this.resize(i,o),this.left=t-.5*this.width,this.top=e-.5*this.height,this.boundingBox.left=this.left,this.boundingBox.top=this.top,this.boundingBox.bottom=this.top+this.height,this.boundingBox.right=this.left+this.width}},{key:"distanceToBorder",value:function(t,e){this.resize(t);var i=.5*this.width,o=.5*this.height,n=Math.sin(e)*i,s=Math.cos(e)*o;return i*o/Math.sqrt(n*n+s*s)}}]),e}(h.default);e.default=d},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}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&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0){this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelModule.size.height+5)}}},{key:"_icon",value:function(t,e,i,o){var n=Number(this.options.icon.size);void 0!==this.options.icon.code?(t.font=(o?"bold ":"")+n+"px "+this.options.icon.face,t.fillStyle=this.options.icon.color||"black",t.textAlign="center",t.textBaseline="middle",this.enableShadow(t),t.fillText(this.options.icon.code,e,i),this.disableShadow(t)):console.error("When using the icon shape, you need to define the code in the icon options object. This can be done per node or globally.")}},{key:"distanceToBorder",value:function(t,e){return this._distanceToBorder(t,e)}}]),e}(h.default);e.default=d},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}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&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0&&(this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t)),t.restore(),t.closePath()}this._drawImageAtPosition(t),this._drawImageLabel(t,e,i,o||n),this.updateBoundingBox(e,i)}},{key:"updateBoundingBox",value:function(t,e){this.resize(),this.left=t-this.width/2,this.top=e-this.height/2,this.boundingBox.top=this.top,this.boundingBox.left=this.left,this.boundingBox.right=this.left+this.width,this.boundingBox.bottom=this.top+this.height,void 0!==this.options.label&&this.labelModule.size.width>0&&(this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelOffset))}},{key:"distanceToBorder",value:function(t,e){return this._distanceToBorder(t,e)}}]),e}(h.default);e.default=d},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}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&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i1&&void 0!==arguments[1]&&arguments[1],o=this.body.data.edges;if(t instanceof u||t instanceof c)this.body.data.edges=t;else if(Array.isArray(t))this.body.data.edges=new u,this.body.data.edges.add(t);else{if(t)throw new TypeError("Array or DataSet expected");this.body.data.edges=new u}if(o&&l.forEach(this.edgesListeners,function(t,e){o.off(e,t)}),this.body.edges={},this.body.data.edges){l.forEach(this.edgesListeners,function(t,i){e.body.data.edges.on(i,t)});var n=this.body.data.edges.getIds();this.add(n,!0)}!1===i&&this.body.emitter.emit("_dataChanged")}},{key:"add",value:function(t){for(var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=this.body.edges,o=this.body.data.edges,n=0;ni.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=this.from.x,i=this.from.y,o=this.to.x,n=this.to.y,s=t.left,r=t.top;return this.edgeType.getDistanceToEdge(e,i,o,n,s,r)<10}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);(o<-1&&i<0||o>0&&i<0)&&(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:"cleanup",value:function(){return this.edgeType.cleanup()}}],[{key:"parseOptions",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},n=["arrowStrikethrough","id","from","hidden","hoverWidth","label","labelHighlightBold","length","line","opacity","physics","scaling","selectionWidth","selfReferenceSize","to","title","value","width"];if(y.selectiveDeepExtend(n,t,e,i),y.mergeOptions(t,e,"smooth",i,o),y.mergeOptions(t,e,"shadow",i,o),void 0!==e.dashes&&null!==e.dashes?t.dashes=e.dashes:!0===i&&null===e.dashes&&(t.dashes=Object.create(o.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),y.mergeOptions(t.scaling,e.scaling,"label",i,o.scaling)):!0===i&&null===e.scaling&&(t.scaling=Object.create(o.scaling)),void 0!==e.arrows&&null!==e.arrows)if("string"==typeof e.arrows){var r=e.arrows.toLowerCase();-1!=r.indexOf("to")&&(t.arrows.to.enabled=!0),-1!=r.indexOf("middle")&&(t.arrows.middle.enabled=!0),-1!=r.indexOf("from")&&(t.arrows.from.enabled=!0)}else{if("object"!==s(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));y.mergeOptions(t.arrows,e.arrows,"to",i,o.arrows),y.mergeOptions(t.arrows,e.arrows,"middle",i,o.arrows),y.mergeOptions(t.arrows,e.arrows,"from",i,o.arrows)}else!0===i&&null===e.arrows&&(t.arrows=Object.create(o.arrows));if(void 0!==e.color&&null!==e.color)if(t.color=y.deepExtend({},t.color,!0),y.isString(e.color))t.color.color=e.color,t.color.highlight=e.color,t.color.hover=e.color,t.color.inherit=!1;else{var a=!1;void 0!==e.color.color&&(t.color.color=e.color.color,a=!0),void 0!==e.color.highlight&&(t.color.highlight=e.color.highlight,a=!0),void 0!==e.color.hover&&(t.color.hover=e.color.hover,a=!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&&!0===a&&(t.color.inherit=!1)}else!0===i&&null===e.color&&(t.color=y.bridgeObject(o.color));void 0!==e.font&&null!==e.font?h.default.parseOptions(t.font,e):!0===i&&null===e.font&&(t.font=y.bridgeObject(o.font))}}]),t}();e.default=g},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}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&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(t){n=!0,s=t}finally{try{!o&&a.return&&a.return()}finally{if(n)throw s}}return i}return function(e,i){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),a=function(){function t(t,e){for(var i=0;iMath.abs(e)||!0===this.options.smooth.forceDirection||"horizontal"===this.options.smooth.forceDirection)&&"vertical"!==this.options.smooth.forceDirection?(o=this.from.y,s=this.to.y,i=this.from.x-r*t,n=this.to.x+r*t):(o=this.from.y-r*e,s=this.to.y+r*e,i=this.from.x,n=this.to.x),[{x:i,y:o},{x:n,y:s}]}},{key:"getViaNode",value:function(){return this._getViaCoordinates()}},{key:"_findBorderPosition",value:function(t,e){return this._findBorderPositionBezier(t,e)}},{key:"_getDistanceToEdge",value:function(t,e,i,o,n,s){var a=arguments.length>6&&void 0!==arguments[6]?arguments[6]:this._getViaCoordinates(),h=r(a,2),d=h[0],l=h[1];return this._getDistanceToBezierEdge(t,e,i,o,n,s,d,l)}},{key:"getPoint",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this._getViaCoordinates(),i=r(e,2),o=i[0],n=i[1],s=t,a=[];return a[0]=Math.pow(1-s,3),a[1]=3*s*Math.pow(1-s,2),a[2]=3*Math.pow(s,2)*(1-s),a[3]=Math.pow(s,3),{x:a[0]*this.fromPoint.x+a[1]*o.x+a[2]*n.x+a[3]*this.toPoint.x,y:a[0]*this.fromPoint.y+a[1]*o.y+a[2]*n.y+a[3]*this.toPoint.y}}}]),e}(d.default);e.default=l},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}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&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0&&(d=this._getDistanceToLine(f,m,c,p,n,s),h=d2&&void 0!==arguments[2]?arguments[2]:this._getViaCoordinates(),h=0,d=0,l=1,u=this.to,c=!1;for(t.id===this.from.id&&(u=this.from,c=!0);d<=l&&h<10;){var p=.5*(d+l);if(i=this.getPoint(p,a),o=Math.atan2(u.y-i.y,u.x-i.x),n=u.distanceToBorder(e,o),s=Math.sqrt(Math.pow(i.x-u.x,2)+Math.pow(i.y-u.y,2)),r=n-s,Math.abs(r)<.2)break;r<0?!1===c?d=p:l=p:!1===c?l=p:d=p,h++}return i.t=p,i}},{key:"_getDistanceToBezierEdge",value:function(t,e,i,o,n,s,r){var a=1e9,h=void 0,d=void 0,l=void 0,u=void 0,c=void 0,p=t,f=e;for(d=1;d<10;d++)l=.1*d,u=Math.pow(1-l,2)*t+2*l*(1-l)*r.x+Math.pow(l,2)*i,c=Math.pow(1-l,2)*e+2*l*(1-l)*r.y+Math.pow(l,2)*o,d>0&&(h=this._getDistanceToLine(p,f,u,c,n,s),a=ho.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=0,d=this.options.selfReferenceSize,l=void 0,u=void 0,c=void 0,p=void 0,f=void 0,m=.5*(s+r);s<=r&&h<10&&(m=.5*(s+r),l=this._pointOnCircle(o,n,d,m),u=Math.atan2(t.y-l.y,t.x-l.x),c=t.distanceToBorder(e,u),p=Math.sqrt(Math.pow(l.x-t.x,2)+Math.pow(l.y-t.y,2)),f=c-p,!(Math.abs(f)<.05));)f>0?a>0?s=m:r=m:a>0?r=m:s=m,h++;return l.t=m,l}},{key:"getLineWidth",value:function(t,e){return!0===t?Math.max(this.selectionWidth,.3/this.body.view.scale):!0===e?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(!1!==o.inherit){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,!1===this.from.selected&&!1===this.to.selected?(s=r.overrideOpacity(this.from.options.color.border,this.options.color.opacity),a=r.overrideOpacity(this.to.options.color.border,this.options.color.opacity)):!0===this.from.selected&&!1===this.to.selected?a=this.to.options.color.border:!1===this.from.selected&&!0===this.to.selected&&(s=this.from.options.color.border),n.addColorStop(0,s),n.addColorStop(1,a),n}!0===this.colorDirty&&("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!0===this.colorDirty&&(this.color.highlight=o.highlight,this.color.hover=o.hover,this.color.color=r.overrideOpacity(o.color,o.opacity));return this.colorDirty=!1,!0===e?this.color.highlight:!0===i?this.color.hover:this.color.color}},{key:"_circle",value:function(t,e,i,o){this.enableShadow(t),t.beginPath(),t.arc(e,i,o,0,2*Math.PI,!1),t.stroke(),this.disableShadow(t)}},{key:"getDistanceToEdge",value:function(t,e,i,o,s,r,a){var h=0;if(this.from!=this.to)h=this._getDistanceToEdge(t,e,i,o,s,r,a);else{var d=this._getCircleData(),l=n(d,3),u=l[0],c=l[1],p=l[2],f=u-s,m=c-r;h=Math.abs(Math.sqrt(f*f+m*m)-p)}return this.labelModule.size.lefts&&this.labelModule.size.topr?0:h}},{key:"_getDistanceToLine",value:function(t,e,i,o,n,s){var r=i-t,a=o-e,h=r*r+a*a,d=((n-t)*r+(s-e)*a)/h;d>1?d=1:d<0&&(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:"getArrowData",value:function(t,e,i,o,s){var r=void 0,a=void 0,h=void 0,d=void 0,l=void 0,u=void 0,c=this.getLineWidth(o,s);if("from"===e?(h=this.from,d=this.to,l=.1,u=this.options.arrows.from.scaleFactor):"to"===e?(h=this.to,d=this.from,l=-.1,u=this.options.arrows.to.scaleFactor):(h=this.to,d=this.from,u=this.options.arrows.middle.scaleFactor),h!=d)if("middle"!==e)if(!0===this.options.smooth.enabled){a=this.findBorderPosition(h,t,{via:i});var p=this.getPoint(Math.max(0,Math.min(1,a.t+l)),i);r=Math.atan2(a.y-p.y,a.x-p.x)}else r=Math.atan2(h.y-d.y,h.x-d.x),a=this.findBorderPosition(h,t);else r=Math.atan2(h.y-d.y,h.x-d.x),a=this.getPoint(.5,i);else{var f=this._getCircleData(t),m=n(f,3),v=m[0],y=m[1],g=m[2];"from"===e?(a=this.findBorderPosition(this.from,t,{x:v,y:y,low:.25,high:.6,direction:-1}), -r=-2*a.t*Math.PI+1.5*Math.PI+.1*Math.PI):"to"===e?(a=this.findBorderPosition(this.from,t,{x:v,y:y,low:.6,high:1,direction:1}),r=-2*a.t*Math.PI+1.5*Math.PI-1.1*Math.PI):(a=this._pointOnCircle(v,y,g,.175),r=3.9269908169872414)}var b=15*u+3*c;return{point:a,core:{x:a.x-.9*b*Math.cos(r),y:a.y-.9*b*Math.sin(r)},angle:r,length:b}}},{key:"drawArrowHead",value:function(t,e,i,o){t.strokeStyle=this.getColor(t,e,i),t.fillStyle=t.strokeStyle,t.lineWidth=this.getLineWidth(e,i),t.arrow(o.point.x,o.point.y,o.angle,o.length),this.enableShadow(t),t.fill(),this.disableShadow(t)}},{key:"enableShadow",value:function(t){!0===this.options.shadow.enabled&&(t.shadowColor=this.options.shadow.color,t.shadowBlur=this.options.shadow.size,t.shadowOffsetX=this.options.shadow.x,t.shadowOffsetY=this.options.shadow.y)}},{key:"disableShadow",value:function(t){!0===this.options.shadow.enabled&&(t.shadowColor="rgba(0,0,0,0)",t.shadowBlur=0,t.shadowOffsetX=0,t.shadowOffsetY=0)}}]),t}();e.default=a},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}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&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i1&&void 0!==arguments[1]?arguments[1]:this.via,i=t;return{x:Math.pow(1-i,2)*this.fromPoint.x+2*i*(1-i)*e.x+Math.pow(i,2)*this.toPoint.x,y:Math.pow(1-i,2)*this.fromPoint.y+2*i*(1-i)*e.y+Math.pow(i,2)*this.toPoint.y}}},{key:"_findBorderPosition",value:function(t,e){return this._findBorderPositionBezier(t,e,this.via)}},{key:"_getDistanceToEdge",value:function(t,e,i,o,n,s){return this._getDistanceToBezierEdge(t,e,i,o,n,s,this.via)}}]),e}(h.default);e.default=d},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}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&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i=this.to.y?this.from.x<=this.to.x?(t=this.from.x+i*s,e=this.from.y-i*s):this.from.x>this.to.x&&(t=this.from.x-i*s,e=this.from.y-i*s):this.from.ythis.to.x&&(t=this.from.x-i*s,e=this.from.y+i*s)),"discrete"===o&&(t=nMath.abs(this.from.y-this.to.y)&&(this.from.y>=this.to.y?this.from.x<=this.to.x?(t=this.from.x+i*n,e=this.from.y-i*n):this.from.x>this.to.x&&(t=this.from.x-i*n,e=this.from.y-i*n):this.from.ythis.to.x&&(t=this.from.x-i*n,e=this.from.y+i*n)),"discrete"===o&&(e=sMath.abs(this.from.y-this.to.y)&&(t=this.from.x=this.to.y?this.from.x<=this.to.x?(t=this.from.x+i*s,e=this.from.y-i*s,t=this.to.xthis.to.x&&(t=this.from.x-i*s,e=this.from.y-i*s,t=this.to.x>t?this.to.x:t):this.from.ythis.to.x&&(t=this.from.x-i*s,e=this.from.y+i*s,t=this.to.x>t?this.to.x:t)):Math.abs(this.from.x-this.to.x)>Math.abs(this.from.y-this.to.y)&&(this.from.y>=this.to.y?this.from.x<=this.to.x?(t=this.from.x+i*n,e=this.from.y-i*n,e=this.to.y>e?this.to.y:e):this.from.x>this.to.x&&(t=this.from.x-i*n,e=this.from.y-i*n,e=this.to.y>e?this.to.y:e):this.from.ythis.to.x&&(t=this.from.x-i*n,e=this.from.y+i*n,e=this.to.y2&&void 0!==arguments[2]?arguments[2]:{};return this._findBorderPositionBezier(t,e,i.via)}},{key:"_getDistanceToEdge",value:function(t,e,i,o,n,s){var r=arguments.length>6&&void 0!==arguments[6]?arguments[6]:this._getViaCoordinates();return this._getDistanceToBezierEdge(t,e,i,o,n,s,r)}},{key:"getPoint",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this._getViaCoordinates(),i=t;return{x:Math.pow(1-i,2)*this.fromPoint.x+2*i*(1-i)*e.x+Math.pow(i,2)*this.toPoint.x,y:Math.pow(1-i,2)*this.fromPoint.y+2*i*(1-i)*e.y+Math.pow(i,2)*this.toPoint.y}}}]),e}(h.default);e.default=d},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}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&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i=6){var a=r.length-6,h=r.indexOf("vis.js",a);if(h===a){i.p=r.substr(0,r.lastIndexOf("/")+1);break}}}}this.physicsWorker=new u.default,this.physicsWorker.addEventListener("message",function(e){t.physicsWorkerMessageHandler(e)}),this.physicsWorker.onerror=function(e){console.error("Falling back to embedded physics engine",e),t.initEmbeddedPhysics()},this.positionUpdateHandler=function(e){t.physicsWorker.postMessage({type:"updatePositions",data:e})},this.physicsUpdateHandler=function(e){t._physicsUpdateHandler(e)}}}},{key:"_physicsUpdateHandler",value:function(t){if(void 0!==t.options.physics)if(t.options.physics){var e={nodes:{},edges:{}};"node"===t.type?e.nodes[t.id]=this.createPhysicsNode(t.id):"edge"===t.type?e.edges[t.id]=this.createPhysicsEdge(t.id):console.warn("invalid element type"),this.physicsWorker.postMessage({type:"addElements",data:e})}else{var i={nodeIds:[],edgeIds:[]};"node"===t.type?i.nodeIds=[t.id.toString()]:"edge"===t.type?i.edgeIds=[t.id.toString()]:console.warn("invalid element type"),this.physicsWorker.postMessage({type:"removeElements",data:i})}else this.physicsWorker.postMessage({type:"updateProperties",data:t})}},{key:"physicsWorkerMessageHandler",value:function(t){var e=t.data;switch(e.type){case"tickResults":this.stabilized=e.data.stabilized,this.stabilizationIterations=e.data.stabilizationIterations,this._receivedPositions(e.data.positions);break;case"finalizeStabilization":this._finalizeStabilization();break;case"emit":this.emit(e.data.event,e.data.data);break;default:console.warn("unhandled physics worker message:",e)}}},{key:"_receivedPositions",value:function(t){for(var e=0;e0&&void 0!==arguments[0])||arguments[0];this.stabilized=!0,this._updateWorkerStabilized(),!0===t&&this._emitStabilized(),void 0!==this.viewFunction&&(this.body.emitter.off("initRedraw",this.viewFunction),this.viewFunction=void 0,!0===t&&this.body.emitter.emit("_stopRendering"))}},{key:"_updateWorkerStabilized",value:function(){this.physicsWorker&&this.physicsWorker.postMessage({type:"setStabilized",data:this.stabilized})}},{key:"simulationStep",value:function(){if(this.physicsWorker)this.physicsWorker.postMessage({type:"physicsTick"});else{var t=Date.now();this.physicsTick();(Date.now()-t<.4*this.simulationInterval||!0===this.runDoubleSpeed)&&!1===this.stabilized&&(this.physicsTick(),this.runDoubleSpeed=!0)}!0===this.stabilized&&this.stopSimulation()}},{key:"_sendWorkerStabilized",value:function(){this.physicsWorker&&this.physicsWorker.postMessage({type:"stabilized"})}},{key:"_emitStabilized",value:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.stabilizationIterations;(this.stabilizationIterations>1||!0===this.startedStabilization)&&setTimeout(function(){t.body.emitter.emit("stabilized",{iterations:e}),t.startedStabilization=!1,t.stabilizationIterations=0,t._sendWorkerStabilized()},0)}},{key:"createPhysicsNode",value:function(t){var e=this.body.nodes[t];if(e)return{id:e.id.toString(),x:e.x,y:e.y,edges:{length:e.edges.length},options:{fixed:{x:e.options.fixed.x,y:e.options.fixed.y},mass:e.options.mass}}}},{key:"createPhysicsEdge",value:function(t){var e=this.body.edges[t];if(e&&!0===e.options.physics){var i={id:e.id,connected:e.connected,edgeType:{},toId:e.toId,fromId:e.fromId,options:{length:e.length}};return e.edgeType.via&&(i.edgeType={via:{id:e.edgeType.via.id}}),i}}},{key:"initPhysicsData",value:function(){var t=this.body.nodes,e=this.body.edges;this.physicsBody.forces={},this.physicsBody.physicsNodeIndices=[],this.physicsBody.physicsEdgeIndices=[];var i={},o={};for(var n in t)t.hasOwnProperty(n)&&!0===t[n].options.physics&&(this.physicsBody.physicsNodeIndices.push(n),this.physicsWorker&&(i[n]=this.createPhysicsNode(n)));for(var s in e)e.hasOwnProperty(s)&&!0===e[s].options.physics&&(this.physicsBody.physicsEdgeIndices.push(s),this.physicsWorker&&(o[s]=this.createPhysicsEdge(s)));for(var r=0;re?s[t].x>0?e:-e:s[t].x,i.setX(i.x+s[t].x*o)}else n[t].x=0,s[t].x=0;if(!1===i.options.fixed.y){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.setY(i.y+s[t].y*o)}else n[t].y=0,s[t].y=0;return Math.sqrt(Math.pow(s[t].x,2)+Math.pow(s[t].y,2))}},{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].setFixed(!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].setFixed({x:this.freezeCache[e].x,y:this.freezeCache[e].y});this.freezeCache={}}},{key:"stabilize",value:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.options.stabilization.iterations;if("number"!=typeof e&&(console.log("The stabilize method needs a numeric amount of iterations. Switching to default: ",this.options.stabilization.iterations),e=this.options.stabilization.iterations),0===this.physicsBody.physicsNodeIndices.length)return void(this.ready=!0);this.adaptiveTimestep=this.options.adaptiveTimestep,this.body.emitter.emit("_resizeNodes"),this.stopSimulation(),this.stabilized=!1,this.body.emitter.emit("_blockRedraw"),this.targetIterations=e,!0===this.options.stabilization.onlyDynamicEdges&&this._freezeNodes(),this.stabilizationIterations=0,this.physicsWorker?this.physicsWorker.postMessage({type:"stabilize",data:{targetIterations:e}}):setTimeout(function(){return t._stabilizationBatch()},0)}},{key:"_finalizeStabilization",value:function(){this.body.emitter.emit("_allowRedraw"),!0===this.options.stabilization.fit&&this.body.emitter.emit("fit"),!0===this.options.stabilization.onlyDynamicEdges&&this._restoreFrozenNodes(),this.body.emitter.emit("stabilizationIterationsDone"),this.body.emitter.emit("_requestRedraw"),!0===this.stabilized?this._emitStabilized():this.startSimulation(),this.ready=!0}}]),e}(d.default);e.default=p},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.3))return!1;return!0}},{key:"moveNodes",value:function(){for(var t=this.physicsBody.physicsNodeIndices,e=this.options.maxVelocity?this.options.maxVelocity:1e9,i=0,o=0,n=0;n0){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;s0&&(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;h0&&(dr&&(r=d),la&&(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=Math.max(1e-5,Math.abs(r-n)),p=.5*c,f=.5*(n+r),m=.5*(s+a),v={root:{centerOfMass:{x:0,y:0},mass:0,range:{minX:f-p,maxX:f+p,minY:m-p,maxY:m+p},size:c,calcSize:1/c,children:{data:null},maxWidth:0,level:0,childrenCount:4}};this._splitBranch(v.root);for(var y=0;y0&&this._placeInTree(v.root,i);return v}},{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},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}(h.default);e.default=d},function(t,e,i){var o=i(111),n=function(t){return t&&t.__esModule?t:{default:t}}(o),s=new n.default(function(t){return postMessage(t)});self.addEventListener("message",function(t){return s.handleMessage(t)},!1)},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}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&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i1&&void 0!==arguments[1])||arguments[1],i=Object.keys(t.nodes),o=0;o0;){var t=this.toRemove.nodeIds.pop(),e=this.physicsBody.physicsNodeIndices.indexOf(t);e>-1&&this.physicsBody.physicsNodeIndices.splice(e,1),delete this.physicsBody.forces[t],delete this.physicsBody.velocities[t],delete this.body.nodes[t]}for(;this.toRemove.edgeIds.length>0;){var i=this.toRemove.edgeIds.pop(),o=this.physicsBody.physicsEdgeIndices.indexOf(i);o>-1&&this.physicsBody.physicsEdgeIndices.splice(o,1),delete this.body.edges[i]}}},{key:"initPhysicsData",value:function(t){this.physicsBody.forces={},this.physicsBody.physicsNodeIndices=[],this.physicsBody.physicsEdgeIndices=[],this.body.nodes=t.nodes,this.body.edges=t.edges,this.addElements(t,!1);for(var e in this.physicsBody.velocities)void 0===this.body.nodes[e]&&delete this.physicsBody.velocities[e]}},{key:"_performStep",value:function(t,e){var i=this.body.nodes[t],o=this.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},!1===i.options.fixed.x){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(!1===i.options.fixed.y){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;return Math.sqrt(Math.pow(s[t].x,2)+Math.pow(s[t].y,2))}},{key:"_finalizeStabilization",value:function(){this.sendTickResults(),this.postMessage({type:"finalizeStabilization"})}}]),e}(h.default);e.default=d},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"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},r=function(){function t(t,e){for(var i=0;i=t&&i.push(n.id)}for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:{},e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(void 0===t.joinCondition)throw new Error("Cannot call clusterByNodeData without a joinCondition function in the options.");t=this._checkOptions(t);for(var i={},o={},n=0;n2&&void 0!==arguments[2])||arguments[2];e=this._checkOptions(e);for(var o=[],n={},s=void 0,r=void 0,a=void 0,d=void 0,l=void 0,u=0;u0&&Object.keys(p).length>0&&!0===m&&o.push({nodes:c,edges:p})}}}for(var b=0;b1&&void 0!==arguments[1])||arguments[1];this.clusterByEdgeCount(1,t,e)}},{key:"clusterBridges",value:function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];this.clusterByEdgeCount(2,t,e)}},{key:"clusterByConnection",value:function(t,e){var i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];if(void 0===t)throw new Error("No nodeId supplied to clusterByConnection!");if(void 0===this.body.nodes[t])throw new Error("The nodeId given to clusterByConnection does not exist!");var o=this.body.nodes[t];e=this._checkOptions(e,o),void 0===e.clusterNodeProperties.x&&(e.clusterNodeProperties.x=o.x),void 0===e.clusterNodeProperties.y&&(e.clusterNodeProperties.y=o.y),void 0===e.clusterNodeProperties.fixed&&(e.clusterNodeProperties.fixed={},e.clusterNodeProperties.fixed.x=o.options.fixed.x,e.clusterNodeProperties.fixed.y=o.options.fixed.y);var n={},s={},r=o.id,a=h.default.cloneOptions(o);n[r]=o;for(var d=0;d0&&void 0!==arguments[0]?arguments[0]:{};return void 0===t.clusterEdgeProperties&&(t.clusterEdgeProperties={}),void 0===t.clusterNodeProperties&&(t.clusterNodeProperties={}),t}},{key:"_cluster",value:function(t,e,i){var o=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];if(!(Object.keys(t).length<2)){for(var n in t)if(t.hasOwnProperty(n)&&void 0!==this.clusteredNodes[n])return;var s=u.deepExtend({},i.clusterNodeProperties);if(void 0!==i.processProperties){var r=[];for(var a in t)if(t.hasOwnProperty(a)){var d=h.default.cloneOptions(t[a]);r.push(d)}var c=[];for(var p in e)if(e.hasOwnProperty(p)&&"clusterEdge:"!==p.substr(0,12)){var f=h.default.cloneOptions(e[p],"edge");c.push(f)}if(!(s=i.processProperties(s,r,c)))throw new Error("The processProperties function does not return properties!")}void 0===s.id&&(s.id="cluster:"+u.randomUUID());var m=s.id;void 0===s.label&&(s.label="cluster");var v=void 0;void 0===s.x&&(v=this._getClusterPosition(t),s.x=v.x),void 0===s.y&&(void 0===v&&(v=this._getClusterPosition(t)),s.y=v.y),s.id=m;var y=this.body.functions.createNode(s,l.default);y.isCluster=!0,y.containedNodes=t,y.containedEdges=e,y.clusterEdgeProperties=i.clusterEdgeProperties,this.body.nodes[s.id]=y,this._createClusterEdges(t,e,s,i.clusterEdgeProperties);for(var g in e)if(e.hasOwnProperty(g)&&void 0!==this.body.edges[g]){var b=this.body.edges[g];this._backupEdgeOptions(b),b.setOptions({physics:!1,hidden:!0})}for(var _ in t)t.hasOwnProperty(_)&&(this.clusteredNodes[_]={clusterId:s.id,node:this.body.nodes[_]},this.body.nodes[_].setOptions({hidden:!0,physics:!1}));s.id=void 0,!0===o&&this.body.emitter.emit("_dataChanged")}}},{key:"_backupEdgeOptions",value:function(t){void 0===this.clusteredEdges[t.id]&&(this.clusteredEdges[t.id]={physics:t.options.physics,hidden:t.options.hidden})}},{key:"_restoreEdge",value:function(t){var e=this.clusteredEdges[t.id];void 0!==e&&(t.setOptions({physics:e.physics,hidden:e.hidden}),delete this.clusteredEdges[t.id])}},{key:"isCluster",value:function(t){return void 0!==this.body.nodes[t]?!0===this.body.nodes[t].isCluster:(console.log("Node does not exist."),!1)}},{key:"_getClusterPosition",value:function(t){for(var e=Object.keys(t),i=t[e[0]].x,o=t[e[0]].x,n=t[e[0]].y,s=t[e[0]].y,r=void 0,a=1;ao?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=!(arguments.length>2&&void 0!==arguments[2])||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 c=e.releaseFunction(a,r);for(var p in n)if(n.hasOwnProperty(p)){var f=this.body.nodes[p];void 0!==c[p]&&(f.x=void 0===c[p].x?o.x:c[p].x,f.y=void 0===c[p].y?o.y:c[p].y)}}else for(var m in n)if(n.hasOwnProperty(m)){var v=this.body.nodes[m];v=n[m],!1===v.options.fixed.x&&(v.x=o.x),!1===v.options.fixed.y&&(v.y=o.y)}for(var y in n)if(n.hasOwnProperty(y)){var g=this.body.nodes[y];g.vx=o.vx,g.vy=o.vy,g.setOptions({hidden:!1,physics:!0}),delete this.clusteredNodes[y]}for(var b=[],_=0;_o&&(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=c},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;i1&&void 0!==arguments[1]?arguments[1]:[],o=1e9,n=-1e9,s=1e9,r=-1e9;if(i.length>0)for(var a=0;ae.shape.boundingBox.left&&(s=e.shape.boundingBox.left),re.shape.boundingBox.top&&(o=e.shape.boundingBox.top),n1&&void 0!==arguments[1]?arguments[1]:[],o=1e9,n=-1e9,s=1e9,r=-1e9;if(i.length>0)for(var a=0;ae.x&&(s=e.x),re.y&&(o=e.y),n0,t.renderTimer=void 0}),this.body.emitter.on("destroy",function(){t.renderRequests=0,t.allowRedraw=!1,t.renderingActive=!1,!0===t.requiresTimeout?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(){ -!0===this.renderingActive&&void 0===this.renderTimer&&(!0===this.requiresTimeout?this.renderTimer=window.setTimeout(this._renderStep.bind(this),this.simulationInterval):this.renderTimer=window.requestAnimationFrame(this._renderStep.bind(this)))}},{key:"_renderStep",value:function(){!0===this.renderingActive&&(this.renderTimer=void 0,!0===this.requiresTimeout&&this._startRendering(),this._redraw(),!1===this.requiresTimeout&&this._startRendering())}},{key:"redraw",value:function(){this.body.emitter.emit("setSize"),this._redraw()}},{key:"_requestRedraw",value:function(){var t=this;!0!==this.redrawRequested&&!1===this.renderingActive&&!0===this.allowRedraw&&(this.redrawRequested=!0,!0===this.requiresTimeout?window.setTimeout(function(){t._redraw(!1)},0):window.requestAnimationFrame(function(){t._redraw(!1)}))}},{key:"_redraw",value:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(!0===this.allowRedraw){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(),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;if(e.clearRect(0,0,i,o),0===this.canvas.frame.clientWidth)return;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(),!1===t&&(!1===this.dragging||!0===this.dragging&&!1===this.options.hideEdgesOnDrag)&&this._drawEdges(e),(!1===this.dragging||!0===this.dragging&&!1===this.options.hideNodesOnDrag)&&this._drawNodes(e,t),e.beginPath(),this.body.emitter.emit("afterDrawing",e),e.closePath(),e.restore(),!0===t&&e.clearRect(0,0,i,o)}}},{key:"_resizeNodes",value:function(){var t=this.canvas.frame.canvas.getContext("2d");void 0===this.pixelRatio&&(this.pixelRatio=(window.devicePixelRatio||1)/(t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1)),t.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0),t.save(),t.translate(this.body.view.translation.x,this.body.view.translation.y),t.scale(this.body.view.scale,this.body.view.scale);var e=this.body.nodes,i=void 0;for(var o in e)e.hasOwnProperty(o)&&(i=e[o],i.resize(t),i.updateBoundingBox(t,i.selected));t.restore()}},{key:"_drawNodes",value:function(t){for(var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=this.body.nodes,o=this.body.nodeIndices,n=void 0,s=[],r=this.canvas.DOMtoCanvas({x:-20,y:-20}),a=this.canvas.DOMtoCanvas({x:this.canvas.frame.canvas.clientWidth+20,y:this.canvas.frame.canvas.clientHeight+20}),h={top:r.y,left:r.x,bottom:a.y,right:a.x},d=0;d0&&void 0!==arguments[0]?arguments[0]:this.pixelRatio;!0===this.initialized&&(this.cameraState.previousWidth=this.frame.canvas.width/t,this.cameraState.previousHeight=this.frame.canvas.height/t,this.cameraState.scale=this.body.view.scale,this.cameraState.position=this.DOMtoCanvas({x:.5*this.frame.canvas.width/t,y:.5*this.frame.canvas.height/t}))}},{key:"_setCameraState",value:function(){if(void 0!==this.cameraState.scale&&0!==this.frame.canvas.clientWidth&&0!==this.frame.canvas.clientHeight&&0!==this.pixelRatio&&this.cameraState.previousWidth>0){var t=this.frame.canvas.width/this.pixelRatio/this.cameraState.previousWidth,e=this.frame.canvas.height/this.pixelRatio/this.cameraState.previousHeight,i=this.cameraState.scale;1!=t&&1!=e?i=.5*this.cameraState.scale*(t+e):1!=t?i=this.cameraState.scale*t:1!=e&&(i=this.cameraState.scale*e),this.body.view.scale=i;var o=this.DOMtoCanvas({x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight}),n={x:o.x-this.cameraState.position.x,y:o.y-this.cameraState.position.y};this.body.view.translation.x+=n.x*this.body.view.scale,this.body.view.translation.y+=n.y*this.body.view.scale}}},{key:"_prepareValue",value:function(t){if("number"==typeof t)return t+"px";if("string"==typeof t){if(-1!==t.indexOf("%")||-1!==t.indexOf("px"))return t;if(-1===t.indexOf("%"))return t+"px"}throw new Error("Could not use the value supplied for width or height:"+t)}},{key:"_create",value:function(){for(;this.body.container.hasChildNodes();)this.body.container.removeChild(this.body.container.firstChild);if(this.frame=document.createElement("div"),this.frame.className="vis-network",this.frame.style.position="relative",this.frame.style.overflow="hidden",this.frame.tabIndex=900,this.frame.canvas=document.createElement("canvas"),this.frame.canvas.style.position="relative",this.frame.appendChild(this.frame.canvas),this.frame.canvas.getContext){var t=this.frame.canvas.getContext("2d");this.pixelRatio=(window.devicePixelRatio||1)/(t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1),this.frame.canvas.getContext("2d").setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}else{var e=document.createElement("DIV");e.style.color="red",e.style.fontWeight="bold",e.style.padding="10px",e.innerHTML="Error: your browser does not support HTML canvas",this.frame.canvas.appendChild(e)}this.body.container.appendChild(this.frame),this.body.view.scale=1,this.body.view.translation={x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight},this._bindHammer()}},{key:"_bindHammer",value:function(){var t=this;void 0!==this.hammer&&this.hammer.destroy(),this.drag={},this.pinch={},this.hammer=new s(this.frame.canvas),this.hammer.get("pinch").set({enable:!0}),this.hammer.get("pan").set({threshold:5,direction:s.DIRECTION_ALL}),r.onTouch(this.hammer,function(e){t.body.eventListeners.onTouch(e)}),this.hammer.on("tap",function(e){t.body.eventListeners.onTap(e)}),this.hammer.on("doubletap",function(e){t.body.eventListeners.onDoubleTap(e)}),this.hammer.on("press",function(e){t.body.eventListeners.onHold(e)}),this.hammer.on("panstart",function(e){t.body.eventListeners.onDragStart(e)}),this.hammer.on("panmove",function(e){t.body.eventListeners.onDrag(e)}),this.hammer.on("panend",function(e){t.body.eventListeners.onDragEnd(e)}),this.hammer.on("pinch",function(e){t.body.eventListeners.onPinch(e)}),this.frame.canvas.addEventListener("mousewheel",function(e){t.body.eventListeners.onMouseWheel(e)}),this.frame.canvas.addEventListener("DOMMouseScroll",function(e){t.body.eventListeners.onMouseWheel(e)}),this.frame.canvas.addEventListener("mousemove",function(e){t.body.eventListeners.onMouseMove(e)}),this.frame.canvas.addEventListener("contextmenu",function(e){t.body.eventListeners.onContext(e)}),this.hammerFrame=new s(this.frame),r.onRelease(this.hammerFrame,function(e){t.body.eventListeners.onRelease(e)})}},{key:"setSize",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.options.width,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.options.height;t=this._prepareValue(t),e=this._prepareValue(e);var i=!1,o=this.frame.canvas.width,n=this.frame.canvas.height,s=this.frame.canvas.getContext("2d"),r=this.pixelRatio;return this.pixelRatio=(window.devicePixelRatio||1)/(s.webkitBackingStorePixelRatio||s.mozBackingStorePixelRatio||s.msBackingStorePixelRatio||s.oBackingStorePixelRatio||s.backingStorePixelRatio||1),t!=this.options.width||e!=this.options.height||this.frame.style.width!=t||this.frame.style.height!=e?(this._getCameraState(r),this.frame.style.width=t,this.frame.style.height=e,this.frame.canvas.style.width="100%",this.frame.canvas.style.height="100%",this.frame.canvas.width=Math.round(this.frame.canvas.clientWidth*this.pixelRatio),this.frame.canvas.height=Math.round(this.frame.canvas.clientHeight*this.pixelRatio),this.options.width=t,this.options.height=e,i=!0):(this.frame.canvas.width==Math.round(this.frame.canvas.clientWidth*this.pixelRatio)&&this.frame.canvas.height==Math.round(this.frame.canvas.clientHeight*this.pixelRatio)||this._getCameraState(r),this.frame.canvas.width!=Math.round(this.frame.canvas.clientWidth*this.pixelRatio)&&(this.frame.canvas.width=Math.round(this.frame.canvas.clientWidth*this.pixelRatio),i=!0),this.frame.canvas.height!=Math.round(this.frame.canvas.clientHeight*this.pixelRatio)&&(this.frame.canvas.height=Math.round(this.frame.canvas.clientHeight*this.pixelRatio),i=!0)),!0===i&&(this.body.emitter.emit("resize",{width:Math.round(this.frame.canvas.width/this.pixelRatio),height:Math.round(this.frame.canvas.height/this.pixelRatio),oldWidth:Math.round(o/this.pixelRatio),oldHeight:Math.round(n/this.pixelRatio)}),this._setCameraState()),this.initialized=!0,i}},{key:"_XconvertDOMtoCanvas",value:function(t){return(t-this.body.view.translation.x)/this.body.view.scale}},{key:"_XconvertCanvasToDOM",value:function(t){return t*this.body.view.scale+this.body.view.translation.x}},{key:"_YconvertDOMtoCanvas",value:function(t){return(t-this.body.view.translation.y)/this.body.view.scale}},{key:"_YconvertCanvasToDOM",value:function(t){return t*this.body.view.scale+this.body.view.translation.y}},{key:"canvasToDOM",value:function(t){return{x:this._XconvertCanvasToDOM(t.x),y:this._YconvertCanvasToDOM(t.y)}}},{key:"DOMtoCanvas",value:function(t){return{x:this._XconvertDOMtoCanvas(t.x),y:this._YconvertDOMtoCanvas(t.y)}}}]),t}();e.default=h},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&&void 0!==arguments[0]?arguments[0]:{};this.options=t}},{key:"fit",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{nodes:[]},e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=void 0,o=void 0;if(void 0!==t.nodes&&0!==t.nodes.length||(t.nodes=this.body.nodeIndices),!0===e){var n=0;for(var s in this.body.nodes)if(this.body.nodes.hasOwnProperty(s)){var a=this.body.nodes[s];!0===a.predefinedPosition&&(n+=1)}if(n>.5*this.body.nodeIndices.length)return void this.fit(t,!1);i=r.default.getRange(this.body.nodes,t.nodes);o=12.662/(this.body.nodeIndices.length+7.4147)+.0964822;o*=Math.min(this.canvas.frame.canvas.clientWidth/600,this.canvas.frame.canvas.clientHeight/600)}else{this.body.emitter.emit("_resizeNodes"),i=r.default.getRange(this.body.nodes,t.nodes);var h=1.1*Math.abs(i.maxX-i.minX),d=1.1*Math.abs(i.maxY-i.minY),l=this.canvas.frame.canvas.clientWidth/h,u=this.canvas.frame.canvas.clientHeight/d;o=l<=u?l:u}o>1?o=1:0===o&&(o=1);var c=r.default.findCenter(i),p={position:c,scale:o,animation:t.animation};this.moveTo(p)}},{key:"focus",value:function(t){var e=arguments.length>1&&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){if(void 0===t)return 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}),!1===t.animation&&(t.animation={duration:0}),!0===t.animation&&(t.animation={}),void 0===t.animation.duration&&(t.animation.duration=1e3),void 0===t.animation.easingFunction&&(t.animation.easingFunction="easeInOutQuad"),this.animateView(t)}},{key:"animateView",value:function(t){if(void 0!==t){this.animationEasingFunction=t.animation.easingFunction,this.releaseNode(),!0===t.locked&&(this.lockedOnNodeId=t.lockedOnNode,this.lockedOnNodeOffset=t.offset),0!=this.easingTime&&this._transitionRedraw(!0),this.sourceScale=this.body.view.scale,this.sourceTranslation=this.body.view.translation,this.targetScale=t.scale,this.body.view.scale=this.targetScale;var e=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight}),i={x:e.x-t.position.x,y:e.y-t.position.y};this.targetTranslation={x:this.sourceTranslation.x+i.x*this.targetScale+t.offset.x,y:this.sourceTranslation.y+i.y*this.targetScale+t.offset.y},0===t.animation.duration?void 0!=this.lockedOnNodeId?(this.viewFunction=this._lockedRedraw.bind(this),this.body.emitter.on("initRedraw",this.viewFunction)):(this.body.view.scale=this.targetScale,this.body.view.translation=this.targetTranslation,this.body.emitter.emit("_requestRedraw")):(this.animationSpeed=1/(60*t.animation.duration*.001)||1/60,this.animationEasingFunction=t.animation.easingFunction,this.viewFunction=this._transitionRedraw.bind(this),this.body.emitter.on("initRedraw",this.viewFunction),this.body.emitter.emit("_startRendering"))}}},{key:"_lockedRedraw",value:function(){var t={x:this.body.nodes[this.lockedOnNodeId].x,y:this.body.nodes[this.lockedOnNodeId].y},e=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight}),i={x:e.x-t.x,y:e.y-t.y},o=this.body.view.translation,n={x:o.x+i.x*this.body.view.scale+this.lockedOnNodeOffset.x,y:o.y+i.y*this.body.view.scale+this.lockedOnNodeOffset.y};this.body.view.translation=n}},{key:"releaseNode",value:function(){void 0!==this.lockedOnNodeId&&void 0!==this.viewFunction&&(this.body.emitter.off("initRedraw",this.viewFunction),this.lockedOnNodeId=void 0,this.lockedOnNodeOffset=void 0)}},{key:"_transitionRedraw",value:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.easingTime+=this.animationSpeed,this.easingTime=!0===t?1:this.easingTime;var e=a.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=h},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=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=this.selectionHandler._getSelectedEdgeCount(),n=this.selectionHandler._getSelectedNodeCount(),s=this.selectionHandler.getSelection(),r=void 0;r=!0===i?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.nodesChanged,c=l.edgesChanged,p=!1;h-n>0?(this.selectionHandler._generateClickEvent("selectNode",e,t),r=!0,p=!0):!0===u&&h>0?(this.selectionHandler._generateClickEvent("deselectNode",e,t,s),this.selectionHandler._generateClickEvent("selectNode",e,t),p=!0,r=!0):h-n<0&&(this.selectionHandler._generateClickEvent("deselectNode",e,t,s),r=!0),a-o>0&&!1===p?(this.selectionHandler._generateClickEvent("selectEdge",e,t),r=!0):a>0&&!0===c?(this.selectionHandler._generateClickEvent("deselectEdge",e,t,s),this.selectionHandler._generateClickEvent("selectEdge",e,t),r=!0):a-o<0&&(this.selectionHandler._generateClickEvent("deselectEdge",e,t,s),r=!0),!0===r&&this.selectionHandler._generateClickEvent("select",e,t)}},{key:"_determineIfDifferent",value:function(t,e){for(var i=!1,o=!1,n=0;n10&&(t=10);var o=void 0;void 0!==this.drag&&!0===this.drag.dragging&&(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"),i0&&(this.popupObj=h[u[u.length-1]],s=!0)}if(void 0===this.popupObj&&!1===s){for(var p=this.body.edgeIndices,f=this.body.edges,m=void 0,v=[],y=0;y0&&(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]&&!0===(i=this.body.nodes[this.popup.popupTargetId].isOverlappingWith(e))){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));!1===i&&(this.popupObj=void 0,this.popup.hide(),this.body.emitter.emit("hidePopup"))}}]),t}();e.default=u},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;i700&&(this.body.emitter.emit("fit",{duration:700}),this.touchTime=(new Date).valueOf())}},{key:"_stopMovement",value:function(){for(var t in this.boundFunctions)this.boundFunctions.hasOwnProperty(t)&&(this.body.emitter.off("initRedraw",this.boundFunctions[t]),this.body.emitter.emit("_stopRendering"));this.boundFunctions={}}},{key:"_moveUp",value:function(){this.body.view.translation.y+=this.options.keyboard.speed.y}},{key:"_moveDown",value:function(){this.body.view.translation.y-=this.options.keyboard.speed.y}},{key:"_moveLeft",value:function(){this.body.view.translation.x+=this.options.keyboard.speed.x}},{key:"_moveRight",value:function(){this.body.view.translation.x-=this.options.keyboard.speed.x}},{key:"_zoomIn",value:function(){this.body.view.scale*=1+this.options.keyboard.speed.zoom,this.body.emitter.emit("zoom",{direction:"+",scale:this.body.view.scale})}},{key:"_zoomOut",value:function(){this.body.view.scale/=1+this.options.keyboard.speed.zoom,this.body.emitter.emit("zoom",{direction:"-",scale:this.body.view.scale})}},{key:"configureKeyboardBindings",value:function(){var t=this;void 0!==this.keycharm&&this.keycharm.destroy(),!0===this.options.keyboard.enabled&&(!0===this.options.keyboard.bindToWindow?this.keycharm=a({container:window,preventDefault:!0}):this.keycharm=a({container:this.canvas.frame,preventDefault:!0}),this.keycharm.reset(),!0===this.activated&&(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},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),r4&&void 0!==arguments[4]&&arguments[4],s=void 0;s=!0===n?{nodes:[],edges:[]}:this.getSelection(),s.pointer={DOM:{x:i.x,y:i.y},canvas:this.canvas.DOMtoCanvas(i)},s.event=e,void 0!==o&&(s.previousSelection=o),this.body.emitter.emit(t,s)}},{key:"selectObject",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.options.selectConnectedEdges;return void 0!==t&&(t instanceof a.default&&!0===e&&this._selectConnectedEdges(t),t.select(),this._addToSelection(t),!0)}},{key:"deselectObject",value:function(t){!0===t.isSelected()&&(t.selected=!1,this._removeFromSelection(t))}},{key:"_getAllNodesOverlappingWith",value:function(t){for(var e=[],i=this.body.nodes,o=0;o1&&void 0!==arguments[1])||arguments[1],i=this._pointerToPositionObject(t),o=this._getAllNodesOverlappingWith(i);return o.length>0?!0===e?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;o1&&void 0!==arguments[1])||arguments[1],i=this._pointerToPositionObject(t),o=this._getAllEdgesOverlappingWith(i);return o.length>0?!0===e?this.body.edges[o[o.length-1]]:o[o.length-1]:void 0}},{key:"_addToSelection",value:function(t){t instanceof a.default?this.selectionObj.nodes[t.id]=t:this.selectionObj.edges[t.id]=t}},{key:"_addToHover",value:function(t){t instanceof a.default?this.hoverObj.nodes[t.id]=t:this.hoverObj.edges[t.id]=t}},{key:"_removeFromSelection",value:function(t){t instanceof a.default?(delete this.selectionObj.nodes[t.id],this._unselectConnectedEdges(t)):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]}},{key:"_getSelectedEdge",value:function(){for(var t in this.selectionObj.edges)if(this.selectionObj.edges.hasOwnProperty(t))return this.selectionObj.edges[t]}},{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;e1&&void 0!==arguments[1]?arguments[1]:{},i=void 0,o=void 0;if(!t||!t.nodes&&!t.edges)throw"Selection must be an object with nodes and/or edges properties";if((e.unselectAll||void 0===e.unselectAll)&&this.unselectAll(),t.nodes)for(i=0;i1&&void 0!==arguments[1])||arguments[1];if(!t||void 0===t.length)throw"Selection must be an array with ids";this.setSelection({nodes:t},{highlightEdges:e})}},{key:"selectEdges",value:function(t){if(!t||void 0===t.length)throw"Selection must be an array with ids";this.setSelection({edges:t})}},{key:"updateSelection",value:function(){for(var t in this.selectionObj.nodes)this.selectionObj.nodes.hasOwnProperty(t)&&(this.body.nodes.hasOwnProperty(t)||delete this.selectionObj.nodes[t]);for(var e in this.selectionObj.edges)this.selectionObj.edges.hasOwnProperty(e)&&(this.body.edges.hasOwnProperty(e)||delete this.selectionObj.edges[e])}}]),t}();e.default=u},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(t){n=!0,s=t}finally{try{!o&&a.return&&a.return()}finally{if(n)throw s}}return i}return function(e,i){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},r=function(){function t(t,e){for(var i=0;i0&&(this.options.hierarchical.levelSeparation*=-1):this.options.hierarchical.levelSeparation<0&&(this.options.hierarchical.levelSeparation*=-1),this.body.emitter.emit("_resetHierarchicalLayout"),this.adaptAllOptionsForHierarchicalLayout(e);if(!0===i)return this.body.emitter.emit("refresh"),d.deepExtend(e,this.optionsBackup)}return e}},{key:"adaptAllOptionsForHierarchicalLayout",value:function(t){if(!0===this.options.hierarchical.enabled){void 0===t.physics||!0===t.physics?(t.physics={enabled:void 0===this.optionsBackup.physics.enabled||this.optionsBackup.physics.enabled,solver:"hierarchicalRepulsion"},this.optionsBackup.physics.enabled=void 0===this.optionsBackup.physics.enabled||this.optionsBackup.physics.enabled,this.optionsBackup.physics.solver=this.optionsBackup.physics.solver||"barnesHut"):"object"===s(t.physics)?(this.optionsBackup.physics.enabled=void 0===t.physics.enabled||t.physics.enabled,this.optionsBackup.physics.solver=t.physics.solver||"barnesHut",t.physics.solver="hierarchicalRepulsion"):!1!==t.physics&&(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||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,forceDirection:void 0!==t.edges.smooth.forceDirection&&t.edges.smooth.forceDirection},t.edges.smooth={enabled:void 0===t.edges.smooth.enabled||t.edges.smooth.enabled,type:e,roundness:void 0===t.edges.smooth.roundness?.5:t.edges.smooth.roundness,forceDirection:void 0!==t.edges.smooth.forceDirection&&t.edges.smooth.forceDirection}),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(!0!==this.options.hierarchical.enabled){this.randomSeed=this.initialRandomSeed;for(var e=0;e100){for(var n=this.body.nodeIndices.length;this.body.nodeIndices.length>100&&i<=10;){i+=1;var s=this.body.nodeIndices.length;i%3==0?this.body.modules.clustering.clusterBridges(o):this.body.modules.clustering.clusterOutliers(o);if(s==this.body.nodeIndices.length&&i%3!=0)return this._declusterAll(),this.body.emitter.emit("_layoutFailed"),void console.info("This network could not be positioned by this version of the improved layout algorithm. Please disable improvedLayout for better performance.")}this.body.modules.kamadaKawai.setOptions({springLength:Math.max(150,2*n)})}i>10&&console.info("The clustering didn't succeed within the amount of interations allowed, progressing with partial result."),this.body.modules.kamadaKawai.solve(this.body.nodeIndices,this.body.edgeIndices,!0),this._shiftToCenter();for(var r=0;r0){var t=void 0,e=void 0,i=!1,o=!1;this.hierarchicalLevels={},this.lastNodeOnLevel={},this.hierarchicalChildrenReference={},this.hierarchicalParentReference={},this.hierarchicalTrees={},this.treeIndex=-1,this.distributionOrdering={},this.distributionIndex={},this.distributionOrderingPresence={};for(e in this.body.nodes)this.body.nodes.hasOwnProperty(e)&&(t=this.body.nodes[e],void 0===t.options.x&&void 0===t.options.y&&!1,void 0!==t.options.level?(i=!0,this.hierarchicalLevels[e]=t.options.level):o=!0);if(!0===o&&!0===i)throw new Error("To use the hierarchical layout, nodes require either no predefined levels or levels have to be defined for all nodes.");!0===o&&("hubsize"===this.options.hierarchical.sortMethod?this._determineLevelsByHubsize():"directed"===this.options.hierarchical.sortMethod?this._determineLevelsDirected():"custom"===this.options.hierarchical.sortMethod&&this._determineLevelsCustomCallback());for(var n in this.body.nodes)this.body.nodes.hasOwnProperty(n)&&void 0===this.hierarchicalLevels[n]&&(this.hierarchicalLevels[n]=0);var s=this._getDistribution();this._generateMap(),this._placeNodesByHierarchy(s),this._condenseHierarchy(),this._shiftToCenter()}}},{key:"_condenseHierarchy",value:function(){var t=this,e=!1,i={},o=function(e,i){for(var o in t.hierarchicalTrees)if(t.hierarchicalTrees.hasOwnProperty(o)&&t.hierarchicalTrees[o]===e){var n=t.body.nodes[o],s=t._getPositionForHierarchy(n);t._setPositionForHierarchy(n,s+i,void 0,!0)}},s=function(e){var i=1e9,o=-1e9;for(var n in t.hierarchicalTrees)if(t.hierarchicalTrees.hasOwnProperty(n)&&t.hierarchicalTrees[n]===e){var s=t._getPositionForHierarchy(t.body.nodes[n]);i=Math.min(s,i),o=Math.max(s,o)}return{min:i,max:o}},r=function(){for(var e=[],i=0;i<=t.treeIndex;i++)e.push(s(i));return e},a=function e(i,o){if(!o[i.id]&&(o[i.id]=!0,t.hierarchicalChildrenReference[i.id])){var n=t.hierarchicalChildrenReference[i.id];if(n.length>0)for(var s=0;s1&&void 0!==arguments[1]?arguments[1]:1e9,o=1e9,s=1e9,r=1e9,a=-1e9;for(var h in e)if(e.hasOwnProperty(h)){var d=t.body.nodes[h],l=t.hierarchicalLevels[d.id],u=t._getPositionForHierarchy(d),c=t._getSpaceAroundNode(d,e),p=n(c,2),f=p[0],m=p[1];o=Math.min(f,o),s=Math.min(m,s),l<=i&&(r=Math.min(u,r),a=Math.max(u,a))}return[r,a,o,s]},d=function(e){var i={};return function e(o){if(void 0!==i[o])return i[o];var n=t.hierarchicalLevels[o];if(t.hierarchicalChildrenReference[o]){var s=t.hierarchicalChildrenReference[o];if(s.length>0)for(var r=0;r1)for(var a=0;a2&&void 0!==arguments[2]&&arguments[2],r=t._getPositionForHierarchy(i),d=t._getPositionForHierarchy(o);if(Math.abs(d-r)>t.options.hierarchical.nodeSpacing){var u={},c={};a(i,u),a(o,c);var p=l(i,o),f=h(u,p),m=n(f,4),v=(m[0],m[1]),y=(m[2],m[3],h(c,p)),g=n(y,4),b=g[0],_=(g[1],g[2]);if(g[3],Math.abs(v-b)>t.options.hierarchical.nodeSpacing){var w=v-b+t.options.hierarchical.nodeSpacing;w<-_+t.options.hierarchical.nodeSpacing&&(w=-_+t.options.hierarchical.nodeSpacing),w<0&&(t._shiftBlock(o.id,w),e=!0,!0===s&&t._centerParent(o))}}},f=function(o,s){for(var r=s.id,d=s.edges,l=t.hierarchicalLevels[s.id],u=t.options.hierarchical.levelSeparation*t.options.hierarchical.levelSeparation,c={},p=[],f=0;f0?m=Math.min(f,p-t.options.hierarchical.nodeSpacing):f<0&&(m=-Math.min(-f,c-t.options.hierarchical.nodeSpacing)),0!=m&&(t._shiftBlock(s.id,m),e=!0)}(_),_=b(o,d),function(i){var o=t._getPositionForHierarchy(s),r=t._getSpaceAroundNode(s),a=n(r,2),h=a[0],d=a[1],l=i-o,u=o;l>0?u=Math.min(o+(d-t.options.hierarchical.nodeSpacing),i):l<0&&(u=Math.max(o-(h-t.options.hierarchical.nodeSpacing),i)),u!==o&&(t._setPositionForHierarchy(s,u,void 0,!0),e=!0)}(_)};!0===this.options.hierarchical.blockShifting&&(function(i){var o=Object.keys(t.distributionOrdering);o=o.reverse();for(var n=0;n0)for(var d=0;d0&&Math.abs(y)0&&(r=this._getPositionForHierarchy(i[n-1])+this.options.hierarchical.nodeSpacing),this._setPositionForHierarchy(s,r,e),this._validataPositionAndContinue(s,e,r),o++}}}}},{key:"_placeBranchNodes",value:function(t,e){if(void 0!==this.hierarchicalChildrenReference[t]){for(var i=[],o=0;oe&&void 0===this.positionedNodes[s.id]))return;var a=void 0;a=0===n?this._getPositionForHierarchy(this.body.nodes[t]):this._getPositionForHierarchy(i[n-1])+this.options.hierarchical.nodeSpacing,this._setPositionForHierarchy(s,a,r),this._validataPositionAndContinue(s,r,a)}for(var h=1e9,d=-1e9,l=0;l0&&0!==(e=this._getHubSize());)for(var o in this.body.nodes)if(this.body.nodes.hasOwnProperty(o)){var n=this.body.nodes[o];n.edges.length===e&&this._crawlNetwork(i,o)}}},{key:"_determineLevelsCustomCallback",value:function(){var t=this,e=function(e,i,o){void 0===t.hierarchicalLevels[e.id]&&(t.hierarchicalLevels[e.id]=1e5);var n=(h.default.cloneOptions(e,"node"),h.default.cloneOptions(i,"node"),void h.default.cloneOptions(o,"edge"));t.hierarchicalLevels[i.id]=t.hierarchicalLevels[e.id]+n};this._crawlNetwork(e),this._setMinLevelToZero()}},{key:"_determineLevelsDirected",value:function(){var t=this,e=function(e,i,o){void 0===t.hierarchicalLevels[e.id]&&(t.hierarchicalLevels[e.id]=1e4),o.toId==i.id?t.hierarchicalLevels[i.id]=t.hierarchicalLevels[e.id]+1:t.hierarchicalLevels[i.id]=t.hierarchicalLevels[e.id]-1};this._crawlNetwork(e),this._setMinLevelToZero()}},{key:"_setMinLevelToZero",value:function(){var t=1e9 -;for(var e in this.body.nodes)this.body.nodes.hasOwnProperty(e)&&void 0!==this.hierarchicalLevels[e]&&(t=Math.min(this.hierarchicalLevels[e],t));for(var i in this.body.nodes)this.body.nodes.hasOwnProperty(i)&&void 0!==this.hierarchicalLevels[i]&&(this.hierarchicalLevels[i]-=t)}},{key:"_generateMap",value:function(){var t=this,e=function(e,i){if(t.hierarchicalLevels[i.id]>t.hierarchicalLevels[e.id]){var o=e.id,n=i.id;void 0===t.hierarchicalChildrenReference[o]&&(t.hierarchicalChildrenReference[o]=[]),t.hierarchicalChildrenReference[o].push(n),void 0===t.hierarchicalParentReference[n]&&(t.hierarchicalParentReference[n]=[]),t.hierarchicalParentReference[n].push(o)}};this._crawlNetwork(e)}},{key:"_crawlNetwork",value:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:function(){},i=arguments[1],o={},n=0,s=function i(n,s){if(void 0===o[n.id]){void 0===t.hierarchicalTrees[n.id]&&(t.hierarchicalTrees[n.id]=s,t.treeIndex=Math.max(s,t.treeIndex)),o[n.id]=!0;for(var r=void 0,a=0;a3&&void 0!==arguments[3]&&arguments[3])&&(void 0===this.distributionOrdering[i]&&(this.distributionOrdering[i]=[],this.distributionOrderingPresence[i]={}),void 0===this.distributionOrderingPresence[i][t.id]&&(this.distributionOrdering[i].push(t),this.distributionIndex[t.id]=this.distributionOrdering[i].length-1),this.distributionOrderingPresence[i][t.id]=!0),"UD"===this.options.hierarchical.direction||"DU"===this.options.hierarchical.direction?t.x=e:t.y=e}},{key:"_getPositionForHierarchy",value:function(t){return"UD"===this.options.hierarchical.direction||"DU"===this.options.hierarchical.direction?t.x:t.y}},{key:"_sortNodeArray",value:function(t){t.length>1&&("UD"===this.options.hierarchical.direction||"DU"===this.options.hierarchical.direction?t.sort(function(t,e){return t.x-e.x}):t.sort(function(t,e){return t.y-e.y}))}}]),t}();e.default=l},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&&!1!==this.options.deleteNode?(!0===n&&this._createSeperator(4),this._createDeleteButton(o)):0===t&&!1!==this.options.deleteEdge&&(!0===n&&this._createSeperator(4),this._createDeleteButton(o))),this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this)),this._temporaryBindEvent("select",this.showManipulatorToolbar.bind(this))}this.body.emitter.emit("_redraw")}},{key:"addNodeMode",value:function(){if(!0!==this.editMode&&this.enableEditMode(),this._clean(),this.inMode="addNode",!0===this.guiEnabled){var t=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(t),this._createSeperator(),this._createDescription(t.addDescription||this.options.locales.en.addDescription),this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this))}this._temporaryBindEvent("click",this._performAddNode.bind(this))}},{key:"editNode",value:function(){var t=this;!0!==this.editMode&&this.enableEditMode(),this._clean();var e=this.selectionHandler._getSelectedNode();if(void 0!==e){if(this.inMode="editNode","function"!=typeof this.options.editNode)throw new Error("No function has been configured to handle the editing of nodes.");if(!0!==e.isCluster){var i=s.deepExtend({},e.options,!1);if(i.x=e.x,i.y=e.y,2!==this.options.editNode.length)throw new Error("The function for edit does not support two arguments (data, callback)");this.options.editNode(i,function(e){null!==e&&void 0!==e&&"editNode"===t.inMode&&t.body.data.nodes.getDataSet().update(e),t.showManipulatorToolbar()})}else alert(this.options.locales[this.options.locale].editClusterError||this.options.locales.en.editClusterError)}else this.showManipulatorToolbar()}},{key:"addEdgeMode",value:function(){if(!0!==this.editMode&&this.enableEditMode(),this._clean(),this.inMode="addEdge",!0===this.guiEnabled){var t=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(t),this._createSeperator(),this._createDescription(t.edgeDescription||this.options.locales.en.edgeDescription),this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this))}this._temporaryBindUI("onTouch",this._handleConnect.bind(this)),this._temporaryBindUI("onDragEnd",this._finishConnect.bind(this)),this._temporaryBindUI("onDrag",this._dragControlNode.bind(this)),this._temporaryBindUI("onRelease",this._finishConnect.bind(this)),this._temporaryBindUI("onDragStart",function(){}),this._temporaryBindUI("onHold",function(){})}},{key:"editEdgeMode",value:function(){if(!0!==this.editMode&&this.enableEditMode(),this._clean(),this.inMode="editEdge",!0===this.guiEnabled){var t=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(t),this._createSeperator(),this._createDescription(t.editEdgeDescription||this.options.locales.en.editEdgeDescription),this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this))}if(this.edgeBeingEditedId=this.selectionHandler.getSelectedEdges()[0],void 0!==this.edgeBeingEditedId){var e=this.body.edges[this.edgeBeingEditedId],i=this._getNewTargetNode(e.from.x,e.from.y),o=this._getNewTargetNode(e.to.x,e.to.y);this.temporaryIds.nodes.push(i.id),this.temporaryIds.nodes.push(o.id),this.body.nodes[i.id]=i,this.body.nodeIndices.push(i.id),this.body.nodes[o.id]=o,this.body.nodeIndices.push(o.id),this._temporaryBindUI("onTouch",this._controlNodeTouch.bind(this)),this._temporaryBindUI("onTap",function(){}),this._temporaryBindUI("onHold",function(){}),this._temporaryBindUI("onDragStart",this._controlNodeDragStart.bind(this)),this._temporaryBindUI("onDrag",this._controlNodeDrag.bind(this)),this._temporaryBindUI("onDragEnd",this._controlNodeDragEnd.bind(this)),this._temporaryBindUI("onMouseMove",function(){}),this._temporaryBindEvent("beforeDrawing",function(t){var n=e.edgeType.findBorderPositions(t);!1===i.selected&&(i.x=n.from.x,i.y=n.from.y),!1===o.selected&&(o.x=n.to.x,o.y=n.to.y)}),this.body.emitter.emit("_redraw")}else this.showManipulatorToolbar()}},{key:"deleteSelected",value:function(){var t=this;!0!==this.editMode&&this.enableEditMode(),this._clean(),this.inMode="delete";var e=this.selectionHandler.getSelectedNodes(),i=this.selectionHandler.getSelectedEdges(),o=void 0;if(e.length>0){for(var n=0;n0&&"function"==typeof this.options.deleteEdge&&(o=this.options.deleteEdge);if("function"==typeof o){var s={nodes:e,edges:i};if(2!==o.length)throw new Error("The function for delete does not support two arguments (data, callback)");o(s,function(e){null!==e&&void 0!==e&&"delete"===t.inMode?(t.body.data.edges.getDataSet().remove(e.edges),t.body.data.nodes.getDataSet().remove(e.nodes),t.body.emitter.emit("startSimulation"),t.showManipulatorToolbar()):(t.body.emitter.emit("startSimulation"),t.showManipulatorToolbar())})}else this.body.data.edges.getDataSet().remove(i),this.body.data.nodes.getDataSet().remove(e),this.body.emitter.emit("startSimulation"),this.showManipulatorToolbar()}},{key:"_setup",value:function(){!0===this.options.enabled?(this.guiEnabled=!0,this._createWrappers(),!1===this.editMode?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",!0===this.editMode?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",!0===this.editMode?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);i.id="targetNode"+s.randomUUID(),i.hidden=!1,i.physics=!1,i.x=t,i.y=e;var o=this.body.functions.createNode(i);return o.shape.boundingBox={left:t,right:t,top:e,bottom:e},o}},{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,!0===this.guiEnabled&&(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;t0&&void 0!==arguments[0]?arguments[0]:1;this.manipulationDOM["seperatorLineDiv"+t]=document.createElement("div"),this.manipulationDOM["seperatorLineDiv"+t].className="vis-separator-line",this.manipulationDiv.appendChild(this.manipulationDOM["seperatorLineDiv"+t])}},{key:"_createAddNodeButton",value:function(t){var e=this._createButton("addNode","vis-button vis-add",t.addNode||this.options.locales.en.addNode);this.manipulationDiv.appendChild(e),this._bindHammerToDiv(e,this.addNodeMode.bind(this))}},{key:"_createAddEdgeButton",value:function(t){var e=this._createButton("addEdge","vis-button vis-connect",t.addEdge||this.options.locales.en.addEdge);this.manipulationDiv.appendChild(e),this._bindHammerToDiv(e,this.addEdgeMode.bind(this))}},{key:"_createEditNodeButton",value:function(t){var e=this._createButton("editNode","vis-button vis-edit",t.editNode||this.options.locales.en.editNode);this.manipulationDiv.appendChild(e),this._bindHammerToDiv(e,this.editNode.bind(this))}},{key:"_createEditEdgeButton",value:function(t){var e=this._createButton("editEdge","vis-button vis-edit",t.editEdge||this.options.locales.en.editEdge);this.manipulationDiv.appendChild(e),this._bindHammerToDiv(e,this.editEdgeMode.bind(this))}},{key:"_createDeleteButton",value:function(t){var e=this._createButton("delete","vis-button vis-delete",t.del||this.options.locales.en.del);this.manipulationDiv.appendChild(e),this._bindHammerToDiv(e,this.deleteSelected.bind(this))}},{key:"_createBackButton",value:function(t){var e=this._createButton("back","vis-button vis-back",t.back||this.options.locales.en.back);this.manipulationDiv.appendChild(e),this._bindHammerToDiv(e,this.showManipulatorToolbar.bind(this))}},{key:"_createButton",value:function(t,e,i){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"vis-label";return this.manipulationDOM[t+"Div"]=document.createElement("div"),this.manipulationDOM[t+"Div"].className=e,this.manipulationDOM[t+"Label"]=document.createElement("div"),this.manipulationDOM[t+"Label"].className=o,this.manipulationDOM[t+"Label"].innerHTML=i,this.manipulationDOM[t+"Div"].appendChild(this.manipulationDOM[t+"Label"]),this.manipulationDOM[t+"Div"]}},{key:"_createDescription",value:function(t){this.manipulationDiv.appendChild(this._createButton("description","vis-button vis-none",t))}},{key:"_temporaryBindEvent",value:function(t,e){this.temporaryEventFunctions.push({event:t,boundFunction:e}),this.body.emitter.on(t,e)}},{key:"_temporaryBindUI",value:function(t,e){if(void 0===this.body.eventListeners[t])throw new Error("This UI function does not exist. Typo? You tried: "+t+" possible are: "+JSON.stringify(Object.keys(this.body.eventListeners)));this.temporaryUIFunctions[t]=this.body.eventListeners[t],this.body.eventListeners[t]=e}},{key:"_unbindTemporaryUIs",value:function(){for(var t in this.temporaryUIFunctions)this.temporaryUIFunctions.hasOwnProperty(t)&&(this.body.eventListeners[t]=this.temporaryUIFunctions[t],delete this.temporaryUIFunctions[t]);this.temporaryUIFunctions={}}},{key:"_unbindTemporaryEvents",value:function(){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(!0===s.isCluster)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(!0===i.isCluster)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&&(!0===s.isCluster?alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError):void 0!==this.body.nodes[o]&&void 0!==this.body.nodes[s.id]&&this._performAddEdge(o,s.id)),this.body.emitter.emit("_redraw")}},{key:"_performAddNode",value:function(t){var e=this,i={id:s.randomUUID(),x:t.pointer.canvas.x,y:t.pointer.canvas.y,label:"new"};if("function"==typeof this.options.addNode){if(2!==this.options.addNode.length)throw new Error("The function for add does not support two arguments (data,callback)");this.options.addNode(i,function(t){null!==t&&void 0!==t&&"addNode"===e.inMode&&(e.body.data.nodes.getDataSet().add(t),e.showManipulatorToolbar())})}else this.body.data.nodes.getDataSet().add(i),this.showManipulatorToolbar()}},{key:"_performAddEdge",value:function(t,e){var i=this,o={from:t,to:e};if("function"==typeof this.options.addEdge){if(2!==this.options.addEdge.length)throw new Error("The function for connect does not support two arguments (data,callback)");this.options.addEdge(o,function(t){null!==t&&void 0!==t&&"addEdge"===i.inMode&&(i.body.data.edges.getDataSet().add(t),i.selectionHandler.unselectAll(),i.showManipulatorToolbar())})}else this.body.data.edges.getDataSet().add(o),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}},{key:"_performEditEdge",value:function(t,e){var i=this,o={id:this.edgeBeingEditedId,from:t,to:e};if("function"==typeof this.options.editEdge){if(2!==this.options.editEdge.length)throw new Error("The function for edit does not support two arguments (data, callback)");this.options.editEdge(o,function(t){null===t||void 0===t||"editEdge"!==i.inMode?(i.body.edges[o.id].updateEdgeType(),i.body.emitter.emit("_redraw")):(i.body.data.edges.getDataSet().update(t),i.selectionHandler.unselectAll(),i.showManipulatorToolbar())})}else this.body.data.edges.getDataSet().update(o),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}}]),t}();e.default=h},function(t,e){Object.defineProperty(e,"__esModule",{value:!0});var i="string",o="boolean",n="number",s="object",r={configure:{enabled:{boolean:o},filter:{boolean:o,string:i,array:"array",function:"function"},container:{dom:"dom"},showButton:{boolean:o},__type__:{object:s,boolean:o,string:i,array:"array",function:"function"}},edges:{arrows:{to:{enabled:{boolean:o},scaleFactor:{number:n},__type__:{object:s,boolean:o}},middle:{enabled:{boolean:o},scaleFactor:{number:n},__type__:{object:s,boolean:o}},from:{enabled:{boolean:o},scaleFactor:{number:n},__type__:{object:s,boolean:o}},__type__:{string:["from","to","middle"],object:s}},arrowStrikethrough:{boolean:o},color:{color:{string:i},highlight:{string:i},hover:{string:i},inherit:{string:["from","to","both"],boolean:o},opacity:{number:n},__type__:{object:s,string:i}},dashes:{boolean:o,array:"array"},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:s,string:i}},hidden:{boolean:o},hoverWidth:{function:"function",number:n},label:{string:i,undefined:"undefined"},labelHighlightBold:{boolean:o},length:{number:n,undefined:"undefined"},physics:{boolean:o},scaling:{min:{number:n},max:{number:n},label:{enabled:{boolean:o},min:{number:n},max:{number:n},maxVisible:{number:n},drawThreshold:{number:n},__type__:{object:s,boolean:o}},customScalingFunction:{function:"function"},__type__:{object:s}},selectionWidth:{function:"function",number:n},selfReferenceSize:{number:n},shadow:{enabled:{boolean:o},color:{string:i},size:{number:n},x:{number:n},y:{number:n},__type__:{object:s,boolean:o}},smooth:{enabled:{boolean:o},type:{string:["dynamic","continuous","discrete","diagonalCross","straightCross","horizontal","vertical","curvedCW","curvedCCW","cubicBezier"]},roundness:{number:n},forceDirection:{string:["horizontal","vertical","none"],boolean:o},__type__:{object:s,boolean:o}},title:{string:i,undefined:"undefined"},width:{number:n},value:{number:n,undefined:"undefined"},__type__:{object:s}},groups:{useDefaultGroups:{boolean:o},__any__:"get from nodes, will be overwritten below",__type__:{object:s}},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:s}},bindToWindow:{boolean:o},__type__:{object:s,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:s}},layout:{randomSeed:{undefined:"undefined",number:n},improvedLayout:{boolean:o},hierarchical:{enabled:{boolean:o},levelSeparation:{number:n},nodeSpacing:{number:n},treeSpacing:{number:n},blockShifting:{boolean:o},edgeMinimization:{boolean:o},parentCentralization:{boolean:o},direction:{string:["UD","DU","LR","RL"]},sortMethod:{string:["hubsize","directed"]},__type__:{object:s,boolean:o}},__type__:{object:s}},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:s,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:s,string:i}},hover:{border:{string:i},background:{string:i},__type__:{object:s,string:i}},__type__:{object:s,string:i}},fixed:{x:{boolean:o},y:{boolean:o},__type__:{object:s,boolean:o}},font:{color:{string:i},size:{number:n},face:{string:i},background:{string:i},strokeWidth:{number:n},strokeColor:{string:i},__type__:{object:s,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:s}},id:{string:i,number:n},image:{string:i,undefined:"undefined"},label:{string:i,undefined:"undefined"},labelHighlightBold:{boolean:o},level:{number:n,undefined:"undefined"},mass:{number:n},physics:{boolean:o},scaling:{min:{number:n},max:{number:n},label:{enabled:{boolean:o},min:{number:n},max:{number:n},maxVisible:{number:n},drawThreshold:{number:n},__type__:{object:s,boolean:o}},customScalingFunction:{function:"function"},__type__:{object:s}},shadow:{enabled:{boolean:o},color:{string:i},size:{number:n},x:{number:n},y:{number:n},__type__:{object:s,boolean:o}},shape:{string:["ellipse","circle","database","box","text","image","circularImage","diamond","dot","star","triangle","triangleDown","square","icon"]},shapeProperties:{borderDashes:{boolean:o,array:"array"},borderRadius:{number:n},interpolation:{boolean:o},useImageSize:{boolean:o},useBorderWithImage:{boolean:o},__type__:{object:s}},size:{number:n},title:{string:i,undefined:"undefined"},value:{number:n,undefined:"undefined"},x:{number:n},y:{number:n},__type__:{object:s}},physics:{enabled:{boolean:o},useWorker:{boolean:o},barnesHut:{gravitationalConstant:{number:n},centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},damping:{number:n},avoidOverlap:{number:n},__type__:{object:s}},forceAtlas2Based:{gravitationalConstant:{number:n},centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},damping:{number:n},avoidOverlap:{number:n},__type__:{object:s}},repulsion:{centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},nodeDistance:{number:n},damping:{number:n},__type__:{object:s}},hierarchicalRepulsion:{centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},nodeDistance:{number:n},damping:{number:n},__type__:{object:s}},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:s,boolean:o}},timestep:{number:n},adaptiveTimestep:{boolean:o},__type__:{object:s,boolean:o}},autoResize:{boolean:o},clickToUse:{boolean:o},locale:{string:i},locales:{__any__:{any:"any"},__type__:{object:s}},height:{string:i},width:{string:i},__type__:{object:s}};r.groups.__any__=r.nodes,r.manipulation.controlNodeStyle=r.nodes;var a={nodes:{borderWidth:[1,0,10,1],borderWidthSelected:[2,0,10,1],color:{border:["color","#2B7CE9"],background:["color","#97C2FC"],highlight:{border:["color","#2B7CE9"],background:["color","#D2E5FF"]},hover:{border:["color","#2B7CE9"],background:["color","#D2E5FF"]}},fixed:{x:!1,y:!1},font:{color:["color","#343434"],size:[14,0,100,1],face:["arial","verdana","tahoma"],background:["color","none"],strokeWidth:[0,0,50,1],strokeColor:["color","#ffffff"]},hidden:!1,labelHighlightBold:!0,physics:!0,scaling:{min:[10,0,200,1],max:[30,0,200,1],label:{enabled:!1,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},shadow:{enabled:!1,color:"rgba(0,0,0,0.5)",size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},shape:["ellipse","box","circle","database","diamond","dot","square","star","text","triangle","triangleDown"],shapeProperties:{borderDashes:!1,borderRadius:[6,0,20,1],interpolation:!0,useImageSize:!1},size:[25,0,200,1]},edges:{arrows:{to:{enabled:!1,scaleFactor:[1,0,3,.05]},middle:{enabled:!1,scaleFactor:[1,0,3,.05]},from:{enabled:!1,scaleFactor:[1,0,3,.05]}},arrowStrikethrough:!0,color:{color:["color","#848484"],highlight:["color","#848484"],hover:["color","#848484"],inherit:["from","to","both",!0,!1], -opacity:[1,0,1,.05]},dashes:!1,font:{color:["color","#343434"],size:[14,0,100,1],face:["arial","verdana","tahoma"],background:["color","none"],strokeWidth:[2,0,50,1],strokeColor:["color","#ffffff"],align:["horizontal","top","middle","bottom"]},hidden:!1,hoverWidth:[1.5,0,5,.1],labelHighlightBold:!0,physics:!0,scaling:{min:[1,0,100,1],max:[15,0,100,1],label:{enabled:!0,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},selectionWidth:[1.5,0,5,.1],selfReferenceSize:[20,0,200,1],shadow:{enabled:!1,color:"rgba(0,0,0,0.5)",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","cubicBezier"],forceDirection:["horizontal","vertical","none"],roundness:[.5,0,1,.05]},width:[1,0,30,1]},layout:{hierarchical:{enabled:!1,levelSeparation:[150,20,500,5],nodeSpacing:[100,20,500,5],treeSpacing:[200,20,500,5],blockShifting:!0,edgeMinimization:!0,parentCentralization:!0,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=r,e.configureOptions=a},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(t){n=!0,s=t}finally{try{!o&&a.return&&a.return()}finally{if(n)throw s}}return i}return function(e,i){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),s=function(){function t(t,e){for(var i=0;i2&&void 0!==arguments[2]&&arguments[2],o=this.distanceSolver.getDistances(this.body,t,e);this._createL_matrix(o),this._createK_matrix(o),this._createE_matrix();for(var s=0,r=Math.max(1e3,Math.min(10*this.body.nodeIndices.length,6e3)),a=1e9,h=0,d=0,l=0,u=0,c=0;a>.01&&s1&&c<5;){c+=1,this._moveNode(h,d,l);var m=this._getEnergy(h),v=n(m,3);u=v[0],d=v[1],l=v[2]}}}},{key:"_getHighestEnergyNode",value:function(t){for(var e=this.body.nodeIndices,i=this.body.nodes,o=0,s=e[0],r=0,a=0,h=0;h=.1;)p=n[l++%s],p>d&&(p=d),c=Math.sqrt(p*p/(1+h*h)),c=r<0?-c:c,t+=c,e+=h*c,!0===u?this.lineTo(t,e):this.moveTo(t,e),d-=p,u=!u})},function(t,e){function i(t){return P=t,p()}function o(){N=0,I=P.charAt(0)}function n(){N++,I=P.charAt(N)}function s(){return P.charAt(N+1)}function r(t){return R.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;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=C.NULL,L="";" "===I||"\t"===I||"\n"===I||"\r"===I;)n();do{var t=!1;if("#"===I){for(var e=N-1;" "===P.charAt(e)||"\t"===P.charAt(e);)e--;if("\n"===P.charAt(e)||""===P.charAt(e)){for(;""!=I&&"\n"!=I;)n();t=!0}}if("/"===I&&"/"===s()){for(;""!=I&&"\n"!=I;)n();t=!0}if("/"===I&&"*"===s()){for(;""!=I;){if("*"===I&&"/"===s()){n(),n();break}n()}t=!0}for(;" "===I||"\t"===I||"\n"===I||"\r"===I;)n()}while(t);if(""===I)return void(A=C.DELIMITER);var i=I+s();if(T[i])return A=C.DELIMITER,L=i,n(),void n();if(T[I])return A=C.DELIMITER,L=I,void n();if(r(I)||"-"===I){for(L+=I,n();r(I);)L+=I,n();return"false"===L?L=!1:"true"===L?L=!0:isNaN(Number(L))||(L=Number(L)),void(A=C.IDENTIFIER)}if('"'===I){for(n();""!=I&&('"'!=I||'"'===I&&'"'===s());)L+=I,'"'===I&&n(),n();if('"'!=I)throw w('End of string " expected');return n(),void(A=C.IDENTIFIER)}for(A=C.UNKNOWN;""!=I;)L+=I,n();throw new SyntaxError('Syntax error in part "'+x(L,30)+'"')}function p(){var t={};if(o(),c(),"strict"===L&&(t.strict=!0,c()),"graph"!==L&&"digraph"!==L||(t.type=L,c()),A===C.IDENTIFIER&&(t.id=L,c()),"{"!=L)throw w("Angle bracket { expected");if(c(),f(t),"}"!=L)throw w("Angle bracket } expected");if(c(),""!==L)throw w("End of file expected");return c(),delete t.node,delete t.edge,delete t.graph,t}function f(t){for(;""!==L&&"}"!=L;)m(t),";"===L&&c()}function m(t){var e=v(t);if(e)return void b(t,e);if(!y(t)){if(A!=C.IDENTIFIER)throw w("Identifier expected");var i=L;if(c(),"="===L){if(c(),A!=C.IDENTIFIER)throw w("Identifier expected");t[i]=L,c()}else g(t,i)}}function v(t){var e=null;if("subgraph"===L&&(e={},e.type="subgraph",c(),A===C.IDENTIFIER&&(e.id=L,c())),"{"===L){if(c(),e||(e={}),e.parent=t,e.node=t.node,e.edge=t.edge,e.graph=t.graph,f(e),"}"!=L)throw w("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 y(t){return"node"===L?(c(),t.node=_(),"node"):"edge"===L?(c(),t.edge=_(),"edge"):"graph"===L?(c(),t.graph=_(),"graph"):null}function g(t,e){var i={id:e},o=_();o&&(i.attr=o),d(t,i),b(t,e)}function b(t,e){for(;"->"===L||"--"===L;){var i,o=L;c();var n=v(t);if(n)i=n;else{if(A!=C.IDENTIFIER)throw w("Identifier or subgraph expected");i=L,d(t,{id:i}),c()}l(t,u(t,e,i,o,_())),e=i}}function _(){for(var t=null;"["===L;){for(c(),t={};""!==L&&"]"!=L;){if(A!=C.IDENTIFIER)throw w("Attribute name expected");var e=L;if(c(),"="!=L)throw w("Equal sign = expected");if(c(),A!=C.IDENTIFIER)throw w("Attribute value expected");h(t,e,L),c(),","==L&&c()}if("]"!=L)throw w("Bracket ] expected");c()}return t}function w(t){return new SyntaxError(t+', got "'+x(L,30)+'" (char '+N+")")}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 O(t,e,i){for(var o=e.split("."),n=o.pop(),s=t,r=0;r":!0,"--":!0},P="",N=0,I="",L="",A=C.NULL,R=/[a-zA-Z_0-9.:#]/;e.parseDOT=i,e.DOTToGraph=S},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;athis?this:t:v()}),xs=function(){return Date.now?Date.now():+new Date},ks=["year","quarter","month","week","day","hour","minute","second","millisecond"];je("Z",":"),je("ZZ",""),Q("Z",In),Q("ZZ",In),it(["Z","ZZ"],function(t,e,i){i._useUTC=!0,i._tzm=Fe(In,t)});var Os=/([\+\-]|\d\d)/gi;e.updateOffset=function(){};var Ms=/^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/,Ss=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;$e.fn=Le.prototype,$e.invalid=Ie;var Ds=oi(1,"add"),Es=oi(-1,"subtract");e.defaultFormat="YYYY-MM-DDTHH:mm:ssZ",e.defaultFormatUtc="YYYY-MM-DDTHH:mm:ss[Z]";var Cs=w("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)}),Ts=1e3,Ps=60*Ts,Ns=60*Ps,Is=3506328*Ns;C("N",0,0,"eraAbbr"),C("NN",0,0,"eraAbbr"),C("NNN",0,0,"eraAbbr"),C("NNNN",0,0,"eraName"),C("NNNNN",0,0,"eraNarrow"),C("y",["y",1],"yo","eraYear"),C("y",["yy",2],0,"eraYear"),C("y",["yyy",3],0,"eraYear"),C("y",["yyyy",4],0,"eraYear"),Q("N",io),Q("NN",io),Q("NNN",io),Q("NNNN",oo),Q("NNNNN",no),it(["N","NN","NNN","NNNN","NNNNN"],function(t,e,i,o){var n=i._locale.erasParse(t,o,i._strict);n?f(i).era=n:f(i).invalidEra=t}),Q("y",Tn),Q("yy",Tn),Q("yyy",Tn),Q("yyyy",Tn),Q("yo",so),it(["y","yy","yyy","yyyy"],jn),it(["yo"],function(t,e,i,o){var n;i._locale._eraYearOrdinalRegex&&(n=t.match(i._locale._eraYearOrdinalRegex)),i._locale.eraYearOrdinalParse?e[jn]=i._locale.eraYearOrdinalParse(t,n):e[jn]=parseInt(t,10)}),C(0,["gg",2],0,function(){return this.weekYear()%100}),C(0,["GG",2],0,function(){return this.isoWeekYear()%100}),ao("gggg","weekYear"),ao("ggggg","weekYear"),ao("GGGG","isoWeekYear"),ao("GGGGG","isoWeekYear"),F("weekYear","gg"),F("isoWeekYear","GG"),Y("weekYear",1),Y("isoWeekYear",1),Q("G",Pn),Q("g",Pn),Q("GG",On,_n),Q("gg",On,_n),Q("GGGG",En,xn),Q("gggg",En,xn),Q("GGGGG",Cn,kn),Q("ggggg",Cn,kn),ot(["gggg","ggggg","GGGG","GGGGG"],function(t,e,i,o){e[o.substr(0,2)]=U(t)}),ot(["gg","GG"],function(t,i,o,n){i[n]=e.parseTwoDigitYear(t)}),C("Q",0,"Qo","quarter"),F("quarter","Q"),Y("quarter",7),Q("Q",bn),it("Q",function(t,e){e[Fn]=3*(U(t)-1)}),C("D",["DD",2],"Do","date"),F("date","D"),Y("date",9),Q("D",On),Q("DD",On,_n),Q("Do",function(t,e){return t?e._dayOfMonthOrdinalParse||e._ordinalParse:e._dayOfMonthOrdinalParseLenient}),it(["D","DD"],Bn),it("Do",function(t,e){e[Bn]=U(t.match(On)[0])});var Ls=q("Date",!0);C("DDD",["DDDD",3],"DDDo","dayOfYear"),F("dayOfYear","DDD"),Y("dayOfYear",4),Q("DDD",Dn),Q("DDDD",wn),it(["DDD","DDDD"],function(t,e,i){i._dayOfYear=U(t)}),C("m",["mm",2],0,"minute"),F("minute","m"),Y("minute",14),Q("m",On),Q("mm",On,_n),it(["m","mm"],Yn);var As=q("Minutes",!1);C("s",["ss",2],0,"second"),F("second","s"),Y("second",15),Q("s",On),Q("ss",On,_n),it(["s","ss"],Wn);var Rs=q("Seconds",!1);C("S",0,0,function(){return~~(this.millisecond()/100)}),C(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),C(0,["SSS",3],0,"millisecond"),C(0,["SSSS",4],0,function(){return 10*this.millisecond()}),C(0,["SSSSS",5],0,function(){return 100*this.millisecond()}),C(0,["SSSSSS",6],0,function(){return 1e3*this.millisecond()}),C(0,["SSSSSSS",7],0,function(){return 1e4*this.millisecond()}),C(0,["SSSSSSSS",8],0,function(){return 1e5*this.millisecond()}),C(0,["SSSSSSSSS",9],0,function(){return 1e6*this.millisecond()}),F("millisecond","ms"),Y("millisecond",16),Q("S",Dn,bn),Q("SS",Dn,_n),Q("SSS",Dn,wn);var zs,js;for(zs="SSSS";zs.length<=9;zs+="S")Q(zs,Tn);for(zs="S";zs.length<=9;zs+="S")it(zs,bo);js=q("Milliseconds",!1),C("z",0,0,"zoneAbbr"),C("zz",0,0,"zoneName");var Fs=g.prototype;Fs.add=Ds,Fs.calendar=ui,Fs.clone=ci,Fs.diff=bi,Fs.endOf=Ai,Fs.format=Oi,Fs.from=Mi,Fs.fromNow=Si,Fs.to=Di,Fs.toNow=Ei,Fs.get=K,Fs.invalidAt=Vi,Fs.isAfter=pi,Fs.isBefore=fi,Fs.isBetween=mi,Fs.isSame=vi,Fs.isSameOrAfter=yi,Fs.isSameOrBefore=gi,Fs.isValid=Yi,Fs.lang=Cs,Fs.locale=Ci,Fs.localeData=Ti,Fs.max=ws,Fs.min=_s,Fs.parsingFlags=Wi,Fs.set=J,Fs.startOf=Li,Fs.subtract=Es,Fs.toArray=Fi,Fs.toObject=Bi,Fs.toDate=ji,Fs.toISOString=xi,Fs.inspect=ki,"undefined"!=typeof Symbol&&null!=Symbol.for&&(Fs[Symbol.for("nodejs.util.inspect.custom")]=function(){return"Moment<"+this.format()+">"}),Fs.toJSON=Hi,Fs.toString=wi,Fs.unix=zi,Fs.valueOf=Ri,Fs.creationData=Gi,Fs.eraName=Zi,Fs.eraNarrow=Ki,Fs.eraAbbr=Ji,Fs.eraYear=Qi,Fs.year=Qn,Fs.isLeapYear=gt,Fs.weekYear=ho,Fs.isoWeekYear=lo,Fs.quarter=Fs.quarters=yo,Fs.month=ct,Fs.daysInMonth=pt,Fs.week=Fs.weeks=Et,Fs.isoWeek=Fs.isoWeeks=Ct,Fs.weeksInYear=po,Fs.weeksInWeekYear=fo,Fs.isoWeeksInYear=uo,Fs.isoWeeksInISOWeekYear=co,Fs.date=Ls,Fs.day=Fs.days=jt,Fs.weekday=Ft,Fs.isoWeekday=Bt,Fs.dayOfYear=go,Fs.hour=Fs.hours=hs,Fs.minute=Fs.minutes=As,Fs.second=Fs.seconds=Rs,Fs.millisecond=Fs.milliseconds=js,Fs.utcOffset=Ye,Fs.utc=Ve,Fs.local=Ge,Fs.parseZone=Ue,Fs.hasAlignedHourOffset=qe,Fs.isDST=Xe,Fs.isLocal=Ke,Fs.isUtcOffset=Je,Fs.isUtc=Qe,Fs.isUTC=Qe,Fs.zoneAbbr=_o,Fs.zoneName=wo,Fs.dates=w("dates accessor is deprecated. Use date instead.",Ls),Fs.months=w("months accessor is deprecated. Use month instead",ct),Fs.years=w("years accessor is deprecated. Use year instead",Qn),Fs.zone=w("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",We),Fs.isDSTShifted=w("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",Ze);var Bs=S.prototype;Bs.calendar=D,Bs.longDateFormat=L,Bs.invalidDate=A,Bs.ordinal=R,Bs.preparse=Oo,Bs.postformat=Oo,Bs.relativeTime=z,Bs.pastFuture=j,Bs.set=O,Bs.eras=Ui,Bs.erasParse=qi,Bs.erasConvertYear=Xi,Bs.erasAbbrRegex=to,Bs.erasNameRegex=$i,Bs.erasNarrowRegex=eo,Bs.months=at,Bs.monthsShort=ht,Bs.monthsParse=lt,Bs.monthsRegex=mt,Bs.monthsShortRegex=ft,Bs.week=Mt,Bs.firstDayOfYear=Dt,Bs.firstDayOfWeek=St,Bs.weekdays=It,Bs.weekdaysMin=At,Bs.weekdaysShort=Lt,Bs.weekdaysParse=zt,Bs.weekdaysRegex=Ht,Bs.weekdaysShortRegex=Yt,Bs.weekdaysMinRegex=Wt,Bs.isPM=Zt,Bs.meridiem=Kt,ee("en",{eras:[{since:"0001-01-01",until:1/0,offset:1,name:"Anno Domini",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"Before Christ",narrow:"BC",abbr:"BC"}],dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(t){var e=t%10;return t+(1===U(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th")}}),e.lang=w("moment.lang is deprecated. Use moment.locale instead.",ee),e.langData=w("moment.langData is deprecated. Use moment.localeData instead.",ne);var Hs=Math.abs,Ys=Wo("ms"),Ws=Wo("s"),Vs=Wo("m"),Gs=Wo("h"),Us=Wo("d"),qs=Wo("w"),Xs=Wo("M"),Zs=Wo("Q"),Ks=Wo("y"),Js=Uo("milliseconds"),Qs=Uo("seconds"),$s=Uo("minutes"),tr=Uo("hours"),er=Uo("days"),ir=Uo("months"),or=Uo("years"),nr=Math.round,sr={ss:44,s:45,m:45,h:22,d:26,w:null,M:11},rr=Math.abs,ar=Le.prototype;return ar.isValid=Ne,ar.abs=Io,ar.add=Ao,ar.subtract=Ro,ar.as=Ho,ar.asMilliseconds=Ys,ar.asSeconds=Ws,ar.asMinutes=Vs,ar.asHours=Gs,ar.asDays=Us,ar.asWeeks=qs,ar.asMonths=Xs,ar.asQuarters=Zs,ar.asYears=Ks,ar.valueOf=Yo,ar._bubble=jo,ar.clone=Vo,ar.get=Go,ar.milliseconds=Js,ar.seconds=Qs,ar.minutes=$s,ar.hours=tr,ar.days=er,ar.weeks=qo,ar.months=ir,ar.years=or,ar.humanize=Qo,ar.toISOString=tn,ar.toString=tn,ar.toJSON=tn,ar.locale=Ci,ar.localeData=Ti,ar.toIsoString=w("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",tn),ar.lang=Cs,C("X",0,0,"unix"),C("x",0,0,"valueOf"),Q("x",Pn),Q("X",Ln),it("X",function(t,e,i){i._d=new Date(1e3*parseFloat(t))}),it("x",function(t,e,i){i._d=new Date(U(t))}),e.version="2.29.1",function(t){en=t}(De),e.fn=Fs,e.min=Ce,e.max=Te,e.now=xs,e.utc=c,e.unix=xo,e.months=Eo,e.isDate=d,e.locale=ee,e.invalid=v,e.duration=$e,e.isMoment=b,e.weekdays=To,e.parseZone=ko,e.localeData=ne,e.isDuration=Ae,e.monthsShort=Co,e.weekdaysMin=No,e.defineLocale=ie,e.updateLocale=oe,e.locales=se,e.weekdaysShort=Po,e.normalizeUnits=B,e.relativeTimeRounding=Ko,e.relativeTimeThreshold=Jo,e.calendarFormat=li,e.prototype=Fs,e.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"},e})}).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){n<16&&(e[o+n++]=u[t])});n<16;)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:y+1,d=a-v+(h-y)/1e4;if(d<0&&void 0===t.clockseq&&(r=r+1&16383),(d<0||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,y=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;p<6;p++)s[n+p]=c[p];return 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;a<16;a++)e[n+a]=s[a];return e||o(s)}var r,a="undefined"!=typeof window?window:void 0!==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;e<16;e++)0==(3&e)&&(t=4294967296*Math.random()),d[e]=t>>>((3&e)<<3)&255;return d}}for(var l=[],u={},c=0;c<256;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,y=0,g=s;g.v1=n,g.v4=s,g.parse=i,g.unparse=o,t.exports=g}).call(e,function(){return this}())},function(t,e,i){function o(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",i=e.split(";"),o=i.find(function(e){return e.match(t+":")})||"",n=o.indexOf(":");return o.substr(n+1).trim()}function n(t){return d.ARROW.calculateSize(t)}function s(t){return 2*n(t).height+(d.CROSS.size+2*d.CROSS.margin)}function r(t,e,i,o){if(i<=o)return t-i/2;var n=e-i+o/2,s=e-o/2;return ts?s:t}function a(t){var i=t.x,o=t.y,n=t.JSONcontainer,s=t.svgContainer,r=t.props,a=t.groupTemplate,l=e.getSVGElement("g",n,s);l.setAttribute("transform","translate("+(i-a.size)+", "+(o-a.size)+") rotate("+d.PARTOGRAM_HEAD_POSITION_DEGREE[r.partogramPosition]+", "+a.size+", "+a.size+")"),a.styles&&l.setAttribute("style",a.styles);var u=e.getSVGElement("circle",n,s);if(u.setAttribute("cx",a.size),u.setAttribute("cy",a.size),u.setAttribute("r",.9*a.size),l.append(u),"IND"!==r.partogramPosition){var c=e.getSVGElement("line",n,s);h(c,a,{y1:.716764966,y2:1.9});var p=e.getSVGElement("line",n,s);h(p,a,{x1:1.6,y1:.758382483,y2:.3,transform:"translate("+1.3*a.size+", "+.5083825*a.size+") scale(-1, 1) translate("+-1.3*a.size+", "+-.5083825*a.size+")"});var f=e.getSVGElement("line",n,s);h(f,a,{y1:.779191242,x2:.4,y2:.3}),l.append(c),l.append(p),l.append(f)}return l}function h(t,e,i){var o=i.x1,n=void 0===o?1:o,s=i.y1,r=void 0===s?1:s,a=i.x2,h=void 0===a?1:a,d=i.y2,l=void 0===d?1:d,u=i.transform;t.setAttribute("x1",e.size*n),t.setAttribute("y1",e.size*r),t.setAttribute("x2",e.size*h),t.setAttribute("y2",e.size*l),u&&t.setAttribute("transform",u)}var d=i(8);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,h,l,u,c,p){var f=[],m={x:t-.5*h.size,y:i-.5*h.size};switch(h.style){case"circle":if(!isNaN(i)&&!isNaN(t)){var v=e.getSVGElement("circle",l,u);v.setAttributeNS(null,"cx",t),v.setAttributeNS(null,"cy",i),v.setAttributeNS(null,"r",.5*h.size),f.push(v)}break;case"square":if(!isNaN(i)&&!isNaN(t)){var y=e.getSVGElement("rect",l,u);y.setAttributeNS(null,"x",t-.5*h.size),y.setAttributeNS(null,"y",i-.5*h.size),y.setAttributeNS(null,"width",h.size),y.setAttributeNS(null,"height",h.size),f.push(y)}break;case"triangle-up":if(!isNaN(m.y)&&!isNaN(m.x)){var g=e.getSVGElement("polygon",l,u);g.setAttributeNS(null,"points",m.x-2+","+(m.y+h.size)+" "+(m.x+h.size+2)+","+(m.y+h.size)+" "+(m.x+.5*h.size)+","+m.y),f.push(g)}break;case"triangle-down":if(!isNaN(m.y)&&!isNaN(m.x)){var b=e.getSVGElement("polygon",l,u);b.setAttributeNS(null,"points",m.x-2+","+m.y+" "+(m.x+h.size+2)+","+m.y+" "+(m.x+.5*h.size)+","+(m.y+h.size)),f.push(b)}break;case"arrow-avg":var _=p.baseY,w=p.baseHeight,x=p.size,k=void 0===x?0:x,O=h.styles,M=h.size,S=n(M),D=d.CROSS.size/2,E=Number(o("stroke-width",O).replace("px","")),C=E/2,T=k,P=s(M),N=(Tn?1:or)&&(s=h,r=d)}return s},o.prototype.min=function(t){var e,i,o=this._data,n=Object.keys(o),s=null,r=null;for(e=0,i=n.length;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(9);o.prototype.setData=function(t){var e,i,o,n;if(this._data&&(this._data.off&&this._data.off("*",this.listener),e=Object.keys(this._ids),this._ids={},this.length=0,this._trigger("remove",{items:e})),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}),o=0,n=e.length;o3&&(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.max0?this.yMin:this.yMax,n=this._convert3Dto2D(new u(w,r,this.zMin)),Math.cos(2*_)>0?(m.textAlign="center",m.textBaseline="top",n.y+=b):Math.sin(2*_)<0?(m.textAlign="right",m.textBaseline="middle"):(m.textAlign="left",m.textBaseline="middle"),m.fillStyle=this.axisColor,m.fillText(" "+this.xValueLabel(i.getCurrent())+" ",n.x,n.y),i.next()}for(m.lineWidth=1,o=void 0===this.defaultYStep,i=new v(this.yMin,this.yMax,this.yStep,o),i.start(),i.getCurrent()0?this.xMin:this.xMax,n=this._convert3Dto2D(new u(s,i.getCurrent(),this.zMin)),Math.cos(2*_)<0?(m.textAlign="center",m.textBaseline="top",n.y+=b):Math.sin(2*_)>0?(m.textAlign="right",m.textBaseline="middle"):(m.textAlign="left",m.textBaseline="middle"),m.fillStyle=this.axisColor,m.fillText(" "+this.yValueLabel(i.getCurrent())+" ",n.x,n.y),i.next();for(m.lineWidth=1,o=void 0===this.defaultZStep,i=new v(this.zMin,this.zMax,this.zStep,o),i.start(),i.getCurrent()0?this.xMin:this.xMax,r=Math.sin(_)<0?this.yMin:this.yMax;!i.end();)t=this._convert3Dto2D(new u(s,r,i.getCurrent())),m.strokeStyle=this.axisColor,m.beginPath(),m.moveTo(t.x,t.y),m.lineTo(t.x-b,t.y),m.stroke(),m.textAlign="right",m.textBaseline="middle",m.fillStyle=this.axisColor,m.fillText(this.zValueLabel(i.getCurrent())+" ",t.x-5,t.y),i.next();m.lineWidth=1,t=this._convert3Dto2D(new u(s,r,this.zMin)),e=this._convert3Dto2D(new u(s,r,this.zMax)),m.strokeStyle=this.axisColor,m.beginPath(),m.moveTo(t.x,t.y),m.lineTo(e.x,e.y),m.stroke(),m.lineWidth=1,c=this._convert3Dto2D(new u(this.xMin,this.yMin,this.zMin)),p=this._convert3Dto2D(new u(this.xMax,this.yMin,this.zMin)),m.strokeStyle=this.axisColor,m.beginPath(),m.moveTo(c.x,c.y),m.lineTo(p.x,p.y),m.stroke(),c=this._convert3Dto2D(new u(this.xMin,this.yMax,this.zMin)),p=this._convert3Dto2D(new u(this.xMax,this.yMax,this.zMin)),m.strokeStyle=this.axisColor,m.beginPath(),m.moveTo(c.x,c.y),m.lineTo(p.x,p.y),m.stroke(),m.lineWidth=1,t=this._convert3Dto2D(new u(this.xMin,this.yMin,this.zMin)),e=this._convert3Dto2D(new u(this.xMin,this.yMax,this.zMin)),m.strokeStyle=this.axisColor,m.beginPath(),m.moveTo(t.x,t.y),m.lineTo(e.x,e.y),m.stroke(),t=this._convert3Dto2D(new u(this.xMax,this.yMin,this.zMin)),e=this._convert3Dto2D(new u(this.xMax,this.yMax,this.zMin)),m.strokeStyle=this.axisColor,m.beginPath(),m.moveTo(t.x,t.y),m.lineTo(e.x,e.y),m.stroke();var x=this.xLabel;x.length>0&&(l=.1/this.scale.y,s=(this.xMin+this.xMax)/2,r=Math.cos(_)>0?this.yMin-l:this.yMax+l,n=this._convert3Dto2D(new u(s,r,this.zMin)),Math.cos(2*_)>0?(m.textAlign="center",m.textBaseline="top"):Math.sin(2*_)<0?(m.textAlign="right",m.textBaseline="middle"):(m.textAlign="left",m.textBaseline="middle"),m.fillStyle=this.axisColor,m.fillText(x,n.x,n.y));var k=this.yLabel;k.length>0&&(d=.1/this.scale.x,s=Math.sin(_)>0?this.xMin-d:this.xMax+d,r=(this.yMin+this.yMax)/2,n=this._convert3Dto2D(new u(s,r,this.zMin)),Math.cos(2*_)<0?(m.textAlign="center",m.textBaseline="top"):Math.sin(2*_)>0?(m.textAlign="right",m.textBaseline="middle"):(m.textAlign="left",m.textBaseline="middle"),m.fillStyle=this.axisColor,m.fillText(k,n.x,n.y));var O=this.zLabel;O.length>0&&(h=30,s=Math.cos(_)>0?this.xMin:this.xMax,r=Math.sin(_)<0?this.yMin:this.yMax,a=(this.zMin+this.zMax)/2,n=this._convert3Dto2D(new u(s,r,a)),m.textAlign="right",m.textBaseline="middle",m.fillStyle=this.axisColor,m.fillText(O,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,l,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),l=1,this.showShadow?(c=Math.min(1+x.x/k/2,1),a=this._hsv2rgb(d,l,c),h=a):(c=1,a=this._hsv2rgb(d,l,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;s0){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:t<0?-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=null,s=null,r=null,a=new c(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--){n=this.dataPoints[i];var h=n.surfaces;if(h)for(var d=h.length-1;d>=0;d--){var l=h[d],u=l.corners,p=[u[0].screen,u[1].screen,u[2].screen],f=[u[2].screen,u[3].screen,u[0].screen];if(this._insideTriangle(a,p)||this._insideTriangle(a,f))return n}}else for(i=0;i"+this.xLabel+":"+t.point.x+""+this.yLabel+":"+t.point.y+""+this.zLabel+":"+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){if(t)return o(t)}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;n.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:t0&&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(11);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(){if(void 0!==this.index)return 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(!(tthis.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;return t/(this.values.length-1)*e+3},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||0,this._end=e||0,this.setStep(i,o)},i.prototype.setStep=function(t,e){void 0===t||t<=0||(void 0!==e&&(this.prettyStep=e),!0===this.prettyStep?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),s<=0&&(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){return t&&t.__esModule?t:{default:t}}function n(t,e,i,o){if(!(this instanceof n))throw new SyntaxError("Constructor must be called with the new operator");if(!(Array.isArray(i)||i instanceof u||i instanceof c)&&i instanceof Object){var s=o;o=i,i=s}var r=this;this.defaultOptions={start:null,end:null,autoResize:!0,throttleRedraw:0,orientation:{axis:"bottom",item:"bottom"},moment:d,width:null,height:null,maxHeight:null,minHeight:null},this.options=l.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 r.timeAxis.step.scale},getStep:function(){return r.timeAxis.step.step},toScreen:r._toScreen.bind(r),toGlobalScreen:r._toGlobalScreen.bind(r),toTime:r._toTime.bind(r),toGlobalTime:r._toGlobalTime.bind(r)}},this.range=new p(this.body),this.components.push(this.range),this.body.range=this.range,this.timeAxis=new m(this.body),this.timeAxis2=null,this.components.push(this.timeAxis),this.currentTime=new v(this.body),this.components.push(this.currentTime),this.itemSet=new g(this.body),this.components.push(this.itemSet),this.itemsData=null,this.groupsData=null,this.on("tap",function(t){r.emit("click",r.getEventProperties(t))}),this.on("doubletap",function(t){r.emit("doubleClick",r.getEventProperties(t))}),this.dom.root.oncontextmenu=function(t){r.emit("contextmenu",r.getEventProperties(t))};var a=null;this.dom.root.onmousemove=function(t){var e=r.getEventProperties(t),i=e.group;if(e.data={id:i},a!=i){if(a){var o=_.clone(e);o.data={id:a},r.emit("linemouseout",o)}i&&(a=i,r.emit("linemouseenter",e))}},this.dom.root.onmouseleave=function(t){var e=r.getEventProperties(t);e.data={id:a},a=null,r.emit("linemouseout",e)},this.fitDone=!1,this.on("changed",function(){if(null!=this.itemsData&&!r.fitDone)if(r.fitDone=!0,void 0!=r.options.start||void 0!=r.options.end){if(void 0==r.options.start||void 0==r.options.end)var t=r.getItemRange();var e=void 0!=r.options.start?r.options.start:t.min,i=void 0!=r.options.end?r.options.end:t.max;r.setWindow(e,i,{animation:!1})}else r.fit({animation:!1})}),o&&this.setOptions(o),i&&this.setGroups(i),e&&this.setItems(e),this._redraw()}var s=i(21),r=o(s),a=i(27),h=o(a),d=(i(13),i(23),i(2)),l=i(1),u=i(9),c=i(11),p=i(28),f=i(31),m=i(32),v=i(38),y=i(36),g=i(39),b=i(27).printStyle,w=i(48).allOptions,x=i(48).configureOptions;n.prototype=new f,n.prototype._createConfigurator=function(){return new r.default(this,this.dom.container,x)},n.prototype.redraw=function(){this.itemSet&&this.itemSet.markDirty({refreshItems:!0}),this._redraw()},n.prototype.setOptions=function(t){if(!0===h.default.validate(t,w)&&console.log("%cErrors have been found in the supplied options object.",b),f.prototype.setOptions.call(this,t),"type"in t&&t.type!==this.options.type){this.options.type=t.type;var e=this.itemsData;if(e){var i=this.getSelection();this.setItems(null),this.setItems(e),this.setSelection(i)}}},n.prototype.setItems=function(t){var e;e=t?t instanceof u||t instanceof c?t:new u(t,{type:{start:"Date",end:"Date"}}):null,this.itemsData=e,this.itemSet&&this.itemSet.setItems(e)},n.prototype.setGroups=function(t){var e;e=t?t instanceof u||t instanceof c?t:new u(t):null,this.groupsData=e,this.itemSet.setGroups(e)},n.prototype.setData=function(t){t&&t.groups&&this.setGroups(t.groups),t&&t.items&&this.setItems(t.items)},n.prototype.setSelection=function(t,e){this.itemSet&&this.itemSet.setSelection(t),e&&e.focus&&this.focus(t,e)},n.prototype.getSelection=function(){return this.itemSet&&this.itemSet.getSelection()||[]},n.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||es)&&(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;this.range.setRange(r-a/2,r+a/2,h)}}},n.prototype.fit=function(t){var e=!t||void 0===t.animation||t.animation,i=this.getItemRange();this.range.setRange(i.min,i.max,e)},n.prototype.getItemRange=function(){var t=this.getDataRange(),e=null!==t.min?t.min.valueOf():null,i=null!==t.max?t.max.valueOf():null,o=null,n=null;if(null!=e&&null!=i){var s=function(t){return l.convert(t.data.start,"Date").valueOf()},r=function(t){var e=void 0!=t.data.end?t.data.end:t.data.start;return l.convert(e,"Date").valueOf()},a=i-e;a<=0&&(a=10);var h=a/this.props.center.width;if(l.forEach(this.itemSet.items,function(t){t.show(),t.repositionX();var a=s(t),d=r(t),l=a-(t.getWidthLeft()+10)*h,u=d+(t.getWidthRight()+10)*h;li&&(i=u,n=t)}.bind(this)),o&&n){var d=o.getWidthLeft()+10,u=n.getWidthRight()+10,c=this.props.center.width-d-u;c>0&&(e=s(o)-d*a/c,i=r(n)+u*a/c)}}return{min:null!=e?new Date(e):null,max:null!=i?new Date(i):null}},n.prototype.getDataRange=function(){var t=null,e=null,i=this.itemsData&&this.itemsData.getDataSet();return i&&i.forEach(function(i){var o=l.convert(i.start,"Date").valueOf(),n=l.convert(void 0!=i.end?i.end:i.start,"Date").valueOf();(null===t||oe)&&(e=n)}),{min:null!=t?new Date(t):null,max:null!=e?new Date(e):null}},n.prototype.getEventProperties=function(t){var e=t.center?t.center.x:t.clientX,i=t.center?t.center.y:t.clientY,o=this.dom.centerContainer.getBoundingClientRect(),n=e-o.left,s=i-o.top,r=this.itemSet.itemFromTarget(t),a=this.itemSet.groupFromTarget(t),h=y.customTimeFromTarget(t),d=this.itemSet.options.snap||null,u=this.body.util.getScale(),c=this.body.util.getStep(),p=this._toTime(n),f=d?d(p,u,c):p,m=l.getTarget(t),v=null;return null!=r?v="item":null!=h?v="custom-time":l.hasParent(m,this.timeAxis.dom.foreground)?v="axis":this.timeAxis2&&l.hasParent(m,this.timeAxis2.dom.foreground)?v="axis":l.hasParent(m,this.itemSet.dom.labelSet)?v="group-label":l.hasParent(m,this.currentTime.bar)?v="current-time":l.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:n,y:s,time:p,snappedTime:f}},n.prototype.setColumnCount=function(t){this.body&&this.body.range&&(this.body.range.props=_.merge(this.body.range.props,{columnCount:t}))},t.exports=n},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"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},s=function(){function t(t,e){for(var i=0;i3&&void 0!==arguments[3]?arguments[3]:1;o(this,t),this.parent=e,this.changedOptions=[],this.container=i,this.allowCreation=!1,this.options={},this.initialized=!1,this.popupCounter=0,this.defaultOptions={enabled:!1,filter:!0,container:void 0,showButton:!0},h.extend(this.options,this.defaultOptions),this.configureOptions=n,this.moduleOptions={},this.domElements=[],this.popupDiv={},this.popupLimit=5,this.popupHistory={},this.colorPicker=new a.default(s),this.wrapper=void 0}return s(t,[{key:"setOptions",value:function(t){if(void 0!==t){this.popupHistory={},this._removePopup();var e=!0;"string"==typeof t?this.options.filter=t:t instanceof Array?this.options.filter=t.join():"object"===(void 0===t?"undefined":n(t))?(void 0!==t.container&&(this.options.container=t.container),void 0!==t.filter&&(this.options.filter=t.filter),void 0!==t.showButton&&(this.options.showButton=t.showButton),void 0!==t.enabled&&(e=t.enabled)):"boolean"==typeof t?(this.options.filter=!0,e=t):"function"==typeof t&&(this.options.filter=t,e=!0),!1===this.options.filter&&(e=!1),this.options.enabled=e}this._clean()}},{key:"setModuleOptions",value:function(t){this.moduleOptions=t,!0===this.options.enabled&&(this._clean(),void 0!==this.options.container&&(this.container=this.options.container),this._create())}},{key:"_create",value:function(){var t=this;this._clean(),this.changedOptions=[];var e=this.options.filter,i=0,o=!1;for(var n in this.configureOptions)this.configureOptions.hasOwnProperty(n)&&(this.allowCreation=!1,o=!1,"function"==typeof e?(o=e(n,[]),o=o||this._handleObject(this.configureOptions[n],[n],!0)):!0!==e&&-1===e.indexOf(n)||(o=!0),!1!==o&&(this.allowCreation=!0,i>0&&this._makeItem([]),this._makeHeader(n),this._handleObject(this.configureOptions[n],[n])),i++);if(!0===this.options.showButton){var s=document.createElement("div");s.className="vis-configuration vis-config-button",s.innerText="generate options",s.onclick=function(){t._printOptions()},s.onmouseover=function(){s.className="vis-configuration vis-config-button hover"},s.onmouseout=function(){s.className="vis-configuration vis-config-button"},this.optionsContainer=document.createElement("div"),this.optionsContainer.className="vis-configuration vis-config-option-container",this.domElements.push(this.optionsContainer),this.domElements.push(s)}this._push()}},{key:"_push",value:function(){this.wrapper=document.createElement("div"),this.wrapper.className="vis-configuration-wrapper",this.container.appendChild(this.wrapper);for(var t=0;t1?i-1:0),n=1;n2&&void 0!==arguments[2]&&arguments[2],o=document.createElement("div");return o.className="vis-configuration vis-config-label vis-config-s"+e.length,o.innerHTML=!0===i?""+t+":":t+":",o}},{key:"_makeDropdown",value:function(t,e,i){var o=document.createElement("select");o.className="vis-configuration vis-config-select";var n=0;void 0!==e&&-1!==t.indexOf(e)&&(n=t.indexOf(e));for(var s=0;ss&&1!==s&&(a.max=Math.ceil(1.2*e),d=a.max,h="range increased"),a.value=e}else a.value=o;var l=document.createElement("input");l.className="vis-configuration vis-config-rangeinput",l.value=a.value;var u=this;a.onchange=function(){l.value=this.value,u._update(Number(this.value),i)},a.oninput=function(){l.value=this.value};var c=this._makeLabel(i[i.length-1],i),p=this._makeItem(i,c,a,l);""!==h&&this.popupHistory[p]!==d&&(this.popupHistory[p]=d,this._setupPopup(h,p))}},{key:"_setupPopup",value:function(t,e){var i=this;if(!0===this.initialized&&!0===this.allowCreation&&this.popupCounter1&&void 0!==arguments[1]?arguments[1]:[],i=arguments.length>2&&void 0!==arguments[2]&&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&&!1===(o=n(r,e))&&!(a instanceof Array)&&"string"!=typeof a&&"boolean"!=typeof a&&a instanceof Object&&(this.allowCreation=!1,o=this._handleObject(a,d,!0),this.allowCreation=!1===i),!1!==o){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),!0===u)if(void 0!==a.enabled){ +var c=h.copyAndExtendArray(d,"enabled"),p=this._getValue(c);if(!0===p){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 m=this._makeLabel(r,d,!0);this._makeItem(d,m),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.body&&this.parent.body.emitter&&this.parent.body.emitter.emit&&this.parent.body.emitter.emit("configChange",i),this.initialized=!0,this.parent.setOptions(i)}},{key:"_constructOptions",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=i;t="true"===t||t,t="false"!==t&&t;for(var n=0;nvar options = "+JSON.stringify(t,null,2)+""}},{key:"getOptions",value:function(){for(var t={},e=0;e0&&void 0!==arguments[0]?arguments[0]:1;o(this,t),this.pixelRatio=e,this.generated=!1,this.centerCoordinates={x:144.5,y:144.5},this.r=289*.49,this.color={r:255,g:255,b:255,a:1},this.hueCircle=void 0,this.initialColor={r:255,g:255,b:255,a:1},this.previousColor=void 0,this.applied=!1,this.updateCallback=function(){},this.closeCallback=function(){},this._create()}return n(t,[{key:"insertTo",value:function(t){void 0!==this.hammer&&(this.hammer.destroy(),this.hammer=void 0),this.container=t,this.container.appendChild(this.frame),this._bindHammer(),this._setSize()}},{key:"setUpdateCallback",value:function(t){if("function"!=typeof t)throw new Error("Function attempted to set as colorPicker update callback is not a function.");this.updateCallback=t}},{key:"setCloseCallback",value:function(t){if("function"!=typeof t)throw new Error("Function attempted to set as colorPicker closing callback is not a function.");this.closeCallback=t}},{key:"_isColorString",value:function(t){var e={black:"#000000",navy:"#000080",darkblue:"#00008B",mediumblue:"#0000CD",blue:"#0000FF",darkgreen:"#006400",green:"#008000",teal:"#008080",darkcyan:"#008B8B",deepskyblue:"#00BFFF",darkturquoise:"#00CED1",mediumspringgreen:"#00FA9A",lime:"#00FF00",springgreen:"#00FF7F",aqua:"#00FFFF",cyan:"#00FFFF",midnightblue:"#191970",dodgerblue:"#1E90FF",lightseagreen:"#20B2AA",forestgreen:"#228B22",seagreen:"#2E8B57",darkslategray:"#2F4F4F",limegreen:"#32CD32",mediumseagreen:"#3CB371",turquoise:"#40E0D0",royalblue:"#4169E1",steelblue:"#4682B4",darkslateblue:"#483D8B",mediumturquoise:"#48D1CC",indigo:"#4B0082",darkolivegreen:"#556B2F",cadetblue:"#5F9EA0",cornflowerblue:"#6495ED",mediumaquamarine:"#66CDAA",dimgray:"#696969",slateblue:"#6A5ACD",olivedrab:"#6B8E23",slategray:"#708090",lightslategray:"#778899",mediumslateblue:"#7B68EE",lawngreen:"#7CFC00",chartreuse:"#7FFF00",aquamarine:"#7FFFD4",maroon:"#800000",purple:"#800080",olive:"#808000",gray:"#808080",skyblue:"#87CEEB",lightskyblue:"#87CEFA",blueviolet:"#8A2BE2",darkred:"#8B0000",darkmagenta:"#8B008B",saddlebrown:"#8B4513",darkseagreen:"#8FBC8F",lightgreen:"#90EE90",mediumpurple:"#9370D8",darkviolet:"#9400D3",palegreen:"#98FB98",darkorchid:"#9932CC",yellowgreen:"#9ACD32",sienna:"#A0522D",brown:"#A52A2A",darkgray:"#A9A9A9",lightblue:"#ADD8E6",greenyellow:"#ADFF2F",paleturquoise:"#AFEEEE",lightsteelblue:"#B0C4DE",powderblue:"#B0E0E6",firebrick:"#B22222",darkgoldenrod:"#B8860B",mediumorchid:"#BA55D3",rosybrown:"#BC8F8F",darkkhaki:"#BDB76B",silver:"#C0C0C0",mediumvioletred:"#C71585",indianred:"#CD5C5C",peru:"#CD853F",chocolate:"#D2691E",tan:"#D2B48C",lightgrey:"#D3D3D3",palevioletred:"#D87093",thistle:"#D8BFD8",orchid:"#DA70D6",goldenrod:"#DAA520",crimson:"#DC143C",gainsboro:"#DCDCDC",plum:"#DDA0DD",burlywood:"#DEB887",lightcyan:"#E0FFFF",lavender:"#E6E6FA",darksalmon:"#E9967A",violet:"#EE82EE",palegoldenrod:"#EEE8AA",lightcoral:"#F08080",khaki:"#F0E68C",aliceblue:"#F0F8FF",honeydew:"#F0FFF0",azure:"#F0FFFF",sandybrown:"#F4A460",wheat:"#F5DEB3",beige:"#F5F5DC",whitesmoke:"#F5F5F5",mintcream:"#F5FFFA",ghostwhite:"#F8F8FF",salmon:"#FA8072",antiquewhite:"#FAEBD7",linen:"#FAF0E6",lightgoldenrodyellow:"#FAFAD2",oldlace:"#FDF5E6",red:"#FF0000",fuchsia:"#FF00FF",magenta:"#FF00FF",deeppink:"#FF1493",orangered:"#FF4500",tomato:"#FF6347",hotpink:"#FF69B4",coral:"#FF7F50",darkorange:"#FF8C00",lightsalmon:"#FFA07A",orange:"#FFA500",lightpink:"#FFB6C1",pink:"#FFC0CB",gold:"#FFD700",peachpuff:"#FFDAB9",navajowhite:"#FFDEAD",moccasin:"#FFE4B5",bisque:"#FFE4C4",mistyrose:"#FFE4E1",blanchedalmond:"#FFEBCD",papayawhip:"#FFEFD5",lavenderblush:"#FFF0F5",seashell:"#FFF5EE",cornsilk:"#FFF8DC",lemonchiffon:"#FFFACD",floralwhite:"#FFFAF0",snow:"#FFFAFA",yellow:"#FFFF00",lightyellow:"#FFFFE0",ivory:"#FFFFF0",white:"#FFFFFF"};if("string"==typeof t)return e[t]}},{key:"setColor",value:function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("none"!==t){var i=void 0,o=this._isColorString(t);if(void 0!==o&&(t=o),!0===a.isString(t)){if(!0===a.isValidRGB(t)){var n=t.substr(4).substr(0,t.length-5).split(",");i={r:n[0],g:n[1],b:n[2],a:1}}else if(!0===a.isValidRGBA(t)){var s=t.substr(5).substr(0,t.length-6).split(",");i={r:s[0],g:s[1],b:s[2],a:s[3]}}else if(!0===a.isValidHex(t)){var r=a.hexToRGB(t);i={r:r.r,g:r.g,b:r.b,a:1}}}else if(t instanceof Object&&void 0!==t.r&&void 0!==t.g&&void 0!==t.b){var h=void 0!==t.a?t.a:"1.0";i={r:t.r,g:t.g,b:t.b,a:h}}if(void 0===i)throw new Error("Unknown color passed to the colorPicker. Supported are strings: rgb, hex, rgba. Object: rgb ({r:r,g:g,b:b,[a:a]}). Supplied: "+JSON.stringify(t));this._setColor(i,e)}}},{key:"show",value:function(){void 0!==this.closeCallback&&(this.closeCallback(),this.closeCallback=void 0),this.applied=!1,this.frame.style.display="block",this._generateHueCircle()}},{key:"_hide",value:function(){var t=this;!0===(!(arguments.length>0&&void 0!==arguments[0])||arguments[0])&&(this.previousColor=a.extend({},this.color)),!0===this.applied&&this.updateCallback(this.initialColor),this.frame.style.display="none",setTimeout(function(){void 0!==t.closeCallback&&(t.closeCallback(),t.closeCallback=void 0)},0)}},{key:"_save",value:function(){this.updateCallback(this.color),this.applied=!1,this._hide()}},{key:"_apply",value:function(){this.applied=!0,this.updateCallback(this.color),this._updatePicker(this.color)}},{key:"_loadLast",value:function(){void 0!==this.previousColor?this.setColor(this.previousColor,!1):alert("There is no last color to load...")}},{key:"_setColor",value:function(t){!0===(!(arguments.length>1&&void 0!==arguments[1])||arguments[1])&&(this.initialColor=a.extend({},t)),this.color=t;var e=a.RGBToHSV(t.r,t.g,t.b),i=2*Math.PI,o=this.r*e.s,n=this.centerCoordinates.x+o*Math.sin(i*e.h),s=this.centerCoordinates.y+o*Math.cos(i*e.h);this.colorPickerSelector.style.left=n-.5*this.colorPickerSelector.clientWidth+"px",this.colorPickerSelector.style.top=s-.5*this.colorPickerSelector.clientHeight+"px",this._updatePicker(t)}},{key:"_setOpacity",value:function(t){this.color.a=t/100,this._updatePicker(this.color)}},{key:"_setBrightness",value:function(t){var e=a.RGBToHSV(this.color.r,this.color.g,this.color.b);e.v=t/100;var i=a.HSVToRGB(e.h,e.s,e.v);i.a=this.color.a,this.color=i,this._updatePicker()}},{key:"_updatePicker",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.color,e=a.RGBToHSV(t.r,t.g,t.b),i=this.colorPickerCanvas.getContext("2d");void 0===this.pixelRation&&(this.pixelRatio=(window.devicePixelRatio||1)/(i.webkitBackingStorePixelRatio||i.mozBackingStorePixelRatio||i.msBackingStorePixelRatio||i.oBackingStorePixelRatio||i.backingStorePixelRatio||1)),i.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);var o=this.colorPickerCanvas.clientWidth,n=this.colorPickerCanvas.clientHeight;i.clearRect(0,0,o,n),i.putImageData(this.hueCircle,0,0),i.fillStyle="rgba(0,0,0,"+(1-e.v)+")",i.circle(this.centerCoordinates.x,this.centerCoordinates.y,this.r),i.fill(),this.brightnessRange.value=100*e.v,this.opacityRange.value=100*t.a,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+")"}},{key:"_setSize",value:function(){this.colorPickerCanvas.style.width="100%",this.colorPickerCanvas.style.height="100%",this.colorPickerCanvas.width=289*this.pixelRatio,this.colorPickerCanvas.height=289*this.pixelRatio}},{key:"_create",value:function(){if(this.frame=document.createElement("div"),this.frame.className="vis-color-picker",this.colorPickerDiv=document.createElement("div"),this.colorPickerSelector=document.createElement("div"),this.colorPickerSelector.className="vis-selector",this.colorPickerDiv.appendChild(this.colorPickerSelector),this.colorPickerCanvas=document.createElement("canvas"),this.colorPickerDiv.appendChild(this.colorPickerCanvas),this.colorPickerCanvas.getContext){var t=this.colorPickerCanvas.getContext("2d");this.pixelRatio=(window.devicePixelRatio||1)/(t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1),this.colorPickerCanvas.getContext("2d").setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}else{var e=document.createElement("DIV");e.style.color="red",e.style.fontWeight="bold",e.style.padding="10px",e.innerText="Error: your browser does not support HTML canvas",this.colorPickerCanvas.appendChild(e)}this.colorPickerDiv.className="vis-color",this.opacityDiv=document.createElement("div"),this.opacityDiv.className="vis-opacity",this.brightnessDiv=document.createElement("div"),this.brightnessDiv.className="vis-brightness",this.arrowDiv=document.createElement("div"),this.arrowDiv.className="vis-arrow",this.opacityRange=document.createElement("input");try{this.opacityRange.type="range",this.opacityRange.min="0",this.opacityRange.max="100"}catch(t){}this.opacityRange.value="100",this.opacityRange.className="vis-range",this.brightnessRange=document.createElement("input");try{this.brightnessRange.type="range",this.brightnessRange.min="0",this.brightnessRange.max="100"}catch(t){}this.brightnessRange.value="100",this.brightnessRange.className="vis-range",this.opacityDiv.appendChild(this.opacityRange),this.brightnessDiv.appendChild(this.brightnessRange);var i=this;this.opacityRange.onchange=function(){i._setOpacity(this.value)},this.opacityRange.oninput=function(){i._setOpacity(this.value)},this.brightnessRange.onchange=function(){i._setBrightness(this.value)},this.brightnessRange.oninput=function(){i._setBrightness(this.value)},this.brightnessLabel=document.createElement("div"),this.brightnessLabel.className="vis-label vis-brightness",this.brightnessLabel.innerText="brightness:",this.opacityLabel=document.createElement("div"),this.opacityLabel.className="vis-label vis-opacity",this.opacityLabel.innerText="opacity:",this.newColorDiv=document.createElement("div"),this.newColorDiv.className="vis-new-color",this.newColorDiv.innerText="new",this.initialColorDiv=document.createElement("div"),this.initialColorDiv.className="vis-initial-color",this.initialColorDiv.innerText="initial",this.cancelButton=document.createElement("div"),this.cancelButton.className="vis-button vis-cancel",this.cancelButton.innerText="cancel",this.cancelButton.onclick=this._hide.bind(this,!1),this.applyButton=document.createElement("div"),this.applyButton.className="vis-button vis-apply",this.applyButton.innerText="apply",this.applyButton.onclick=this._apply.bind(this),this.saveButton=document.createElement("div"),this.saveButton.className="vis-button vis-save",this.saveButton.innerText="save",this.saveButton.onclick=this._save.bind(this),this.loadButton=document.createElement("div"),this.loadButton.className="vis-button vis-load",this.loadButton.innerText="load last",this.loadButton.onclick=this._loadLast.bind(this),this.frame.appendChild(this.colorPickerDiv),this.frame.appendChild(this.arrowDiv),this.frame.appendChild(this.brightnessLabel),this.frame.appendChild(this.brightnessDiv),this.frame.appendChild(this.opacityLabel),this.frame.appendChild(this.opacityDiv),this.frame.appendChild(this.newColorDiv),this.frame.appendChild(this.initialColorDiv),this.frame.appendChild(this.cancelButton),this.frame.appendChild(this.applyButton),this.frame.appendChild(this.saveButton),this.frame.appendChild(this.loadButton)}},{key:"_bindHammer",value:function(){var t=this;this.drag={},this.pinch={},this.hammer=new s(this.colorPickerCanvas),this.hammer.get("pinch").set({enable:!0}),r.onTouch(this.hammer,function(e){t._moveSelector(e)}),this.hammer.on("tap",function(e){t._moveSelector(e)}),this.hammer.on("panstart",function(e){t._moveSelector(e)}),this.hammer.on("panmove",function(e){t._moveSelector(e)}),this.hammer.on("panend",function(e){t._moveSelector(e)})}},{key:"_generateHueCircle",value:function(){if(!1===this.generated){var t=this.colorPickerCanvas.getContext("2d");void 0===this.pixelRation&&(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);var e=this.colorPickerCanvas.clientWidth,i=this.colorPickerCanvas.clientHeight;t.clearRect(0,0,e,i);var o=void 0,n=void 0,s=void 0,r=void 0;this.centerCoordinates={x:.5*e,y:.5*i},this.r=.49*e;var h=2*Math.PI/360,d=1/this.r,l=void 0;for(s=0;s<360;s++)for(r=0;r0?d._handlers[t]=o:(i.off(t,s),delete d._handlers[t]))}),d},d.emit=function(t,o){e=o.target,i.emit(t,o)},d.destroy=function(){var t=i.element.hammer,e=t.indexOf(d);-1!==e&&t.splice(e,1),t.length||delete i.element.hammer,d._handlers={},i.destroy()},d}var e=null;return t})},function(t,e,i){var o;!function(n,s,r,a){function h(t,e,i){return setTimeout(p(t,i),e)}function d(t,e,i){return!!Array.isArray(t)&&(l(t,i[e],i),!0)}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\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",s=n.console&&(n.console.warn||n.console.log);return s&&s.call(n.console,o,i),t.apply(this,arguments)}}function c(t,e,i){var o,n=e.prototype;o=t.prototype=Object.create(n),o.constructor=t,o._super=n,i&&ft(o,i)}function p(t,e){return function(){return t.apply(e,arguments)}}function f(t,e){return typeof t==yt?t.apply(e?e[0]||a:a,e):t}function m(t,e){return t===a?e:t}function v(t,e,i){l(_(e),function(e){t.addEventListener(e,i,!1)})}function y(t,e,i){l(_(e),function(e){t.removeEventListener(e,i,!1)})}function g(t,e){for(;t;){if(t==e)return!0;t=t.parentNode}return!1}function b(t,e){return t.indexOf(e)>-1}function _(t){return t.trim().split(/\s+/g)}function w(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=I(e):1===n&&(i.firstMultiple=!1);var s=i.firstInput,r=i.firstMultiple,a=r?r.center:s.center,h=e.center=L(o);e.timeStamp=_t(),e.deltaTime=e.timeStamp-s.timeStamp,e.angle=j(a,h),e.distance=z(a,h),P(i,e),e.offsetDirection=R(e.deltaX,e.deltaY);var d=A(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=d.x,e.overallVelocityY=d.y,e.overallVelocity=bt(d.x)>bt(d.y)?d.x:d.y,e.scale=r?B(r.pointers,o):1,e.rotation=r?F(r.pointers,o):0,e.maxPointers=i.prevInput?e.pointers.length>i.prevInput.maxPointers?e.pointers.length:i.prevInput.maxPointers:e.pointers.length,N(i,e);var l=t.element;g(e.srcEvent.target,l)&&(l=e.srcEvent.target),e.target=l}function P(t,e){var i=e.center,o=t.offsetDelta||{},n=t.prevDelta||{},s=t.prevInput||{};e.eventType!==Ct&&s.eventType!==Pt||(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!=Nt&&(h>Et||r.velocity===a)){var d=e.deltaX-r.deltaX,l=e.deltaY-r.deltaY,u=A(h,d,l);o=u.x,n=u.y,i=bt(u.x)>bt(u.y)?u.x:u.y,s=R(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 I(t){for(var e=[],i=0;i=bt(e)?t<0?Lt:At:e<0?Rt:zt}function z(t,e,i){i||(i=Ht);var o=e[i[0]]-t[i[0]],n=e[i[1]]-t[i[1]];return Math.sqrt(o*o+n*n)}function j(t,e,i){i||(i=Ht);var o=e[i[0]]-t[i[0]],n=e[i[1]]-t[i[1]];return 180*Math.atan2(n,o)/Math.PI}function F(t,e){return j(e[1],e[0],Yt)+j(t[1],t[0],Yt)}function B(t,e){return z(e[0],e[1],Yt)/z(t[0],t[1],Yt)}function H(){this.evEl=Vt,this.evWin=Gt,this.pressed=!1,D.apply(this,arguments)}function Y(){this.evEl=Xt,this.evWin=Zt,D.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}function W(){this.evTarget=Jt,this.evWin=Qt,this.started=!1,D.apply(this,arguments)}function V(t,e){var i=x(t.touches),o=x(t.changedTouches);return e&(Pt|Nt)&&(i=k(i.concat(o),"identifier",!0)),[i,o]}function G(){this.evTarget=te,this.targetIds={},D.apply(this,arguments)}function U(t,e){var i=x(t.touches),o=this.targetIds;if(e&(Ct|Tt)&&1===i.length)return o[i[0].identifier]=!0,[i,i];var n,s,r=x(t.changedTouches),a=[],h=this.target;if(s=i.filter(function(t){return g(t.target,h)}),e===Ct)for(n=0;n-1&&o.splice(t,1)};setTimeout(n,ee)}}function K(t){for(var e=t.srcEvent.clientX,i=t.srcEvent.clientY,o=0;o-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(e,t)}var i=this,o=this.state;o=fe&&e(i.options.event+tt(o))},tryEmit:function(t){if(this.canEmit())return this.emit(t);this.state=32},canEmit:function(){for(var t=0;te.threshold&&n&e.direction},attrTest:function(t){return ot.prototype.attrTest.call(this,t)&&(this.state&ce||!(this.state&ce)&&this.directionTest(t))},emit:function(t){this.pX=t.deltaX,this.pY=t.deltaY;var e=et(t.direction);e&&(t.additionalEvent=this.options.event+e),this._super.emit.call(this,t)}}),c(st,ot,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[ae]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.scale-1)>this.options.threshold||this.state&ce)},emit:function(t){if(1!==t.scale){var e=t.scale<1?"in":"out";t.additionalEvent=this.options.event+e}this._super.emit.call(this,t)}}),c(rt,$,{defaults:{event:"press",pointers:1,time:251,threshold:9},getTouchAction:function(){return[se]},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&(Pt|Nt)&&!n)this.reset();else if(t.eventType&Ct)this.reset(),this._timer=h(function(){this.state=me,this.tryEmit()},e.time,this);else if(t.eventType&Pt)return me;return 32},reset:function(){clearTimeout(this._timer)},emit:function(t){this.state===me&&(t&&t.eventType&Pt?this.manager.emit(this.options.event+"up",t):(this._input.timeStamp=_t(),this.manager.emit(this.options.event,this._input)))}}),c(at,ot,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[ae]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.rotation)>this.options.threshold||this.state&ce)}}),c(ht,ot,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:jt|Ft,pointers:1},getTouchAction:function(){return nt.prototype.getTouchAction.call(this)},attrTest:function(t){var e,i=this.options.direction;return i&(jt|Ft)?e=t.overallVelocity:i&jt?e=t.overallVelocityX:i&Ft&&(e=t.overallVelocityY),this._super.attrTest.call(this,t)&&i&t.offsetDirection&&t.distance>this.options.threshold&&t.maxPointers==this.options.pointers&&bt(e)>this.options.velocity&&t.eventType&Pt},emit:function(t){var e=et(t.offsetDirection);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)}}),c(dt,$,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[re]},process:function(t){var e=this.options,i=t.pointers.length===e.pointers,o=t.distances.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,""),d):n.distance<=8?console.log('%cUnknown option detected: "'+e+'". Did you mean "'+n.closestMatch+'"?'+t.printLocation(n.path,e),d):console.log('%cUnknown option detected: "'+e+'". Did you mean one of these: '+t.print(Object.keys(i))+t.printLocation(o,e),d),a=!0}},{key:"findInOptions",value:function(e,i,o){var n=arguments.length>3&&void 0!==arguments[3]&&arguments[3],s=1e9,a="",h=[],d=e.toLowerCase(),l=void 0;for(var u in i){var c=void 0;if(void 0!==i[u].__type__&&!0===n){var p=t.findInOptions(e,i[u],r.copyAndExtendArray(o,u));s>p.distance&&(a=p.closestMatch,h=p.path,s=p.distance,l=p.indexMatch)}else-1!==u.toLowerCase().indexOf(d)&&(l=u),c=t.levenshteinDistance(e,u),s>c&&(a=u,h=r.copyArray(o),s=c)}return{closestMatch:a,path:h,distance:s,indexMatch:l}}},{key:"printLocation",value:function(t,e){for(var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"Problem value found at: \n",o="\n\n"+i+"options = {\n",n=0;nc,p=a||null===n?n:d+(n-d)*r,y=a||null===s?s:u+(s-u)*r;changed=h._applyRange(p,y),l.updateHiddenDates(h.options.moment,h.body,h.options.hiddenDates),v=v||changed,changed&&h.body.emitter.emit("rangechange",{start:new Date(h.start),end:new Date(h.end),byUser:o}),a?v&&h.body.emitter.emit("rangechanged",{start:new Date(h.start),end:new Date(h.end),byUser:o}):h.animationTimer=setTimeout(t,20)}}()}var y=this._applyRange(n,s);if(l.updateHiddenDates(this.options.moment,this.body,this.options.hiddenDates),y){var g={start:new Date(this.start),end:new Date(this.end),byUser:o};this.body.emitter.emit("rangechange",g),this.body.emitter.emit("rangechanged",g)}},o.prototype._cancelAnimation=function(){this.animationTimer&&(clearTimeout(this.animationTimer),this.animationTimer=null)},o.prototype._applyRange=function(t,e){var i=null!=t?a.convert(t,"Date").valueOf():this.start,o=null!=e?a.convert(e,"Date").valueOf():this.end,n=null!=this.options.max?a.convert(this.options.max,"Date").valueOf():null,s=null!=this.options.min?a.convert(this.options.min,"Date").valueOf():null,r=null;if(isNaN(i)||null===i)throw new Error('Invalid start "'+t+'"');if(isNaN(o)||null===o)throw new Error('Invalid end "'+e+'"');if(on&&(o=n)),null!==n&&o>n&&(r=o-n,i-=r,o-=r,null!=s&&ithis.start&&od&&(this.end-this.start===d&&ithis.end?(i=this.start,o=this.end):(r=o-i-d,i+=r/2,o-=r/2))}var l=this.start!=i||this.end!=o;return i>=this.start&&i<=this.end||o>=this.start&&o<=this.end||this.start>=i&&this.start<=o||this.end>=i&&this.end<=o||this.body.emitter.emit("checkRangedItems"),this.start=i,this.end=o,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._isInsideRange(t)&&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.props.touch.dragging&&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;o-=l.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end);var s="horizontal"==e?this.body.domProps.center.width:this.body.domProps.center.height,r=-i/s*o,a=this.props.touch.start+r,h=this.props.touch.end+r,d=l.snapAwayFromHidden(this.body.hiddenDates,a,this.previousDelta-i,!0),u=l.snapAwayFromHidden(this.body.hiddenDates,h,this.previousDelta-i,!0);if(d!=a||u!=h)return this.deltaDifference+=i,this.props.touch.start=d,this.props.touch.end=u,void this._onDrag(t);this.previousDelta=i,this._applyRange(a,h);var c=new Date(this.start),p=new Date(this.end);this.body.emitter.emit("rangechange",{start:c,end:p,byUser:!0})}},o.prototype._onDragEnd=function(t){this.props.touch.dragging&&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&&this._isInsideRange(t)&&(!this.options.zoomKey||t[this.options.zoomKey])){var e=0;if(t.wheelDelta?e=t.wheelDelta/120:t.detail&&(e=-t.detail/3),e){var i;i=e<0?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=l.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end),n=l.getHiddenDurationBefore(this.options.moment,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=1-e<=0,this.endToFront=e-1<=0;var d=l.snapAwayFromHidden(this.body.hiddenDates,a,1-e,!0),u=l.snapAwayFromHidden(this.body.hiddenDates,h,e-1,!0);d==a&&u==h||(this.props.touch.start=d,this.props.touch.end=u,this.scaleOffset=1-t.scale,a=d,h=u),this.setRange(a,h,!1,!0),this.startToFront=!1,this.endToFront=!0}},o.prototype._isInsideRange=function(t){var e=t.center?t.center.x:t.clientX,i=this.body.dom.centerContainer.getBoundingClientRect(),o=this.body.util.toTime(i.right-e);return o>=this.start&&o<=this.end},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=l.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end),n=l.getHiddenDurationBefore(this.options.moment,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),this.endToFront=!(-i>0);var h=l.snapAwayFromHidden(this.body.hiddenDates,r,i,!0),d=l.snapAwayFromHidden(this.body.hiddenDates,a,-i,!0);h==r&&d==a||(r=h,a=d),this.setRange(r,a,!1,!0),this.startToFront=!1,this.endToFront=!0},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){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,e=t.width,i=t.height,o=t._previousWidth!==e||t._previousHeight!==i;return t._previousWidth=e,t._previousHeight=i,o},t.exports=i},function(t,e){e.convertHiddenOptions=function(t,i,o){if(o&&!Array.isArray(o))return e.convertHiddenOptions(t,i,[o]);if(i.hiddenDates=[],o&&1==Array.isArray(o)){for(var n=0;n=4*a){var c=0,p=s.clone();switch(o[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:",o[h].repeat)}for(;d=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&&n=e&&r=i.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?o<0?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&&t0&&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.setCustomTimeTitle=function(t,e){var i=this.customTimes.filter(function(t){return t.options.id===e});if(0===i.length)throw new Error("No custom time bar found with id "+JSON.stringify(e)) +;if(i.length>0)return i[0].setCustomTitle(t)},o.prototype.getEventProperties=function(t){return{event:t}},o.prototype.addCustomTime=function(t,e){var i=void 0!==t?h.convert(t,"Date").valueOf():new Date;if(this.customTimes.some(function(t){return t.options.id===e}))throw new Error("A custom time with id "+JSON.stringify(e)+" already exists");var o=new c(this.body,h.extend({},this.options,{time:i,id:e}));return this.customTimes.push(o),this.components.push(o),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;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,this.range.setRange(n.start,n.end,o)}else o=!i||void 0===i.animation||i.animation,this.range.setRange(t,e,o)},o.prototype.moveTo=function(t,e){var i=this.range.end-this.range.start,o=h.convert(t,"Date").valueOf(),n=o-i/2,s=o+i/2,r=!e||void 0===e.animation||e.animation;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(){this.redrawCount++;var t=this.dom;if(t&&t.container&&0!=t.container.clientWidth){var e=!1,i=this.options,o=this.props,n=t.root,s=n.clientHeight,a=n.offsetHeight,d=n.offsetWidth,l=n.clientWidth,c=t.centerContainer.clientHeight;u.updateHiddenDates(this.options.moment,this.body,this.options.hiddenDates),"top"==i.orientation?(h.addClassName(n,"vis-top"),h.removeClassName(n,"vis-bottom")):(h.removeClassName(n,"vis-top"),h.addClassName(n,"vis-bottom")),n.style.maxHeight=h.option.asSize(i.maxHeight,""),n.style.minHeight=h.option.asSize(i.minHeight,""),n.style.width=h.option.asSize(i.width,"");var p=o.border;p.left=(t.centerContainer.offsetWidth-t.centerContainer.clientWidth)/2,p.right=p.left,p.top=(t.centerContainer.offsetHeight-c)/2,p.bottom=p.top,o.borderRootHeight=a-s,o.borderRootWidth=d-l,0===c&&(p.left=p.top,p.right=p.left),0===s&&(o.borderRootWidth=o.borderRootHeight),o.center.height=t.center.offsetHeight,o.left.height=t.left.offsetHeight,o.right.height=t.right.offsetHeight,o.top.height=-p.top,o.bottom.height=t.bottom.clientHeight||-p.bottom;var f=Math.max(o.left.height,o.center.height,o.right.height),m=o.top.height+f+o.bottom.height+o.borderRootHeight+p.top+p.bottom;n.style.setProperty("height",h.option.asSize(i.height,m+"px")),o.root.height=a,o.background.height=o.root.height-o.borderRootHeight;var v=o.root.height-o.top.height-o.bottom.height-o.borderRootHeight;o.centerContainer.height=v,o.leftContainer.height=v,o.rightContainer.height=o.leftContainer.height,o.root.width=d,o.background.width=o.root.width-o.borderRootWidth,o.left.width=t.leftContainer.clientWidth||-p.left,o.leftContainer.width=o.left.width,o.right.width=-p.right,o.rightContainer.width=o.right.width;var y=0;y="flowsheet"===this.body.origin?o.root.width-o.right.width-o.borderRootWidth:o.root.width-o.left.width-o.right.width-o.borderRootWidth,o.center.width=y,o.centerContainer.width=y,o.top.width=y,o.bottom.width=y;var g=o.background.height+"px",b=o.centerContainer.height+"px";t.background.style.height=g,t.backgroundVertical.style.height=g,t.backgroundHorizontal.style.height=b,t.centerContainer.style.height=b,t.leftContainer.style.height=o.leftContainer.height+"px",t.background.style.width=o.background.width+"px",t.backgroundVertical.style.width=o.centerContainer.width+"px",t.backgroundHorizontal.style.width=o.background.width+"px",t.centerContainer.style.width=o.center.width+"px",t.bottom.style.width=o.bottom.width+"px",t.background.style.left="0",t.background.style.top="0",t.backgroundVertical.style.left=o.left.width+p.left-2+"px",t.backgroundVertical.style.top="0",t.backgroundHorizontal.style.left="0",t.backgroundHorizontal.style.top=o.top.height+"px",t.centerContainer.style.left=o.left.width+"px",t.centerContainer.style.top=o.top.height+"px",t.leftContainer.style.left="0",t.leftContainer.style.top=o.top.height+"px",t.bottom.style.left=o.left.width+"px",t.bottom.style.top=o.top.height+o.centerContainer.height+"px",this._updateScrollTop();var _=this.props.scrollTop;"top"!=i.orientation.item&&(_+=Math.max(this.props.centerContainer.height-this.props.center.height-p.top-p.bottom,0)),t.center.style.transform="translate(0px, "+_+"px)",t.left.style.transform="translate(0px, "+_+"px)",t.right.style.transform="translate(0px, "+_+"px)";var w=this.props.center.height>this.props.centerContainer.height;this.hammer.get("pan").set({direction:w?r.DIRECTION_ALL:r.DIRECTION_HORIZONTAL});var x=this;if(this.components.forEach(function(t){e=t.redraw(x)||e}),!this.body.reduceRedraw){if(e){if(this.redrawCount<5)return void this.body.emitter.emit("_change")}else this.redrawCount=0}this.initialDrawDone=!0,this.body.emitter.emit("changed")}},o.prototype.repaint=function(){throw new Error("Function repaint is deprecated. Use redraw instead.")},o.prototype.setCurrentTime=function(t){if(!this.currentTime)throw new Error("Option showCurrentTime must be true");this.currentTime.setCurrentTime(t)},o.prototype.getCurrentTime=function(){if(!this.currentTime)throw new Error("Option showCurrentTime must be true");return this.currentTime.getCurrentTime()},o.prototype._toTime=function(t){return u.toTime(this,t,this.props.center.width)},o.prototype._toGlobalTime=function(t){return u.toTime(this,t,this.props.root.width)},o.prototype._toScreen=function(t){return u.toScreen(this,t,this.props.center.width)},o.prototype._toGlobalScreen=function(t){return u.toScreen(this,t,this.props.root.width)},o.prototype._initAutoResize=function(){1==this.options.autoResize?this._startAutoResize():this._stopAutoResize()},o.prototype._startAutoResize=function(){var t=this;if(this._stopAutoResize(),this._onResize=function(){var e=t.dom,i=e.root;if(1!=t.options.autoResize)return void t._stopAutoResize();if(e&&i){var o=i.offsetHeight,n=i.offsetWidth,s=t.props;n==s.lastWidth&&o==s.lastHeight||(s.lastWidth=n,s.lastHeight=o,t.body.emitter.emit("_change"),!t.body.reduceRedraw&&t.body.eventOnDrawn&&t.body.eventOnDrawn())}},h.addEventListener(window,"resize",this._onResize),t.dom&&t.dom.root){var e=t.dom.root,i=e.offsetWidth,o=e.offsetHeight;t.props.lastWidth=i,t.props.lastHeight=o}this.watchTimer=setInterval(this._onResize,0)},o.prototype._stopAutoResize=function(){this.watchTimer&&(clearInterval(this.watchTimer),this.watchTimer=void 0),this._onResize&&(h.removeEventListener(window,"resize",this._onResize),this._onResize=null)},o.prototype._onTouch=function(t){this.touch.allowDragging=!0,this.touch.initialScrollTop=this.props.scrollTop},o.prototype._onPinch=function(t){this.touch.allowDragging=!1},o.prototype._onDrag=function(t){if(this.touch.allowDragging){var e=t.deltaY,i=this._getScrollTop();this._setScrollTop(this.touch.initialScrollTop+e)!=i&&this.emit("verticalDrag")}},o.prototype._setScrollTop=function(t){return this.props.scrollTop=t,this._updateScrollTop(),this.props.scrollTop},o.prototype._updateScrollTop=function(){var t=Math.min(this.props.centerContainer.height-this.props.center.height,0);return t!=this.props.scrollTopMin&&("top"!=this.options.orientation.item&&(this.props.scrollTop+=t-this.props.scrollTopMin),this.props.scrollTopMin=t),this.props.scrollTop>0&&(this.props.scrollTop=0),this.props.scrollTop0&&(g=b)<44&&(g=44),v&&this.options.showMajorLabels?this._repaintMajorLine(f,g,t,y):this.options.showMinorLines&&this._repaintMinorLine(f,g,t,y,x),w.length||_||u.next()||(x=d);s.forEach(this.dom.redundant,function(t){for(;t.length;){var e=t.pop();e&&e.parentNode&&e.parentNode.removeChild(e)}})},o.prototype._setXY=function(t,e,i){t.style.setProperty("transform","translate("+e+"px, "+i+"px)")},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;var r="top"==i?this.props.majorLabelHeight:"0";return this._setXY(n,t,r),n},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;var r="top"==i?"0":this.props.minorLabelHeight+"px";return this._setXY(n,t,r),n},o.prototype._repaintMinorLine=function(t,e,i,o,n){var s=this.dom,r=this;if(r.body&&r.body.domProps){var a=s.redundant.lines.shift();a||(a=document.createElement("div"),s.background.appendChild(a)),s.lines.push(a);var h=r.props;a.style.setProperty("width",e+"px"),a.style.setProperty("height",h.minorLineHeight+"px");var d="top"==i?h.majorLabelHeight:r.body.domProps.top.height,l=n*e-e;return r._setXY(a,l,d),a.className="vis-grid vis-vertical vis-minor "+o,a}},o.prototype._repaintMajorLine=function(t,e,i,o){var n=this.dom.redundant.lines.shift();n||(n=document.createElement("div"),this.dom.background.appendChild(n)),this.dom.lines.push(n);var s=this.props;n.style.width=e+"px",n.style.height=s.majorLineHeight+"px";var r="top"==i?"0":this.body.domProps.top.height,a=t-s.majorLineWidth/2;return this._setXY(n,a,r),n.className="vis-grid vis-vertical vis-major "+o,n},o.prototype._calculateCharSize=function(){var t=this.dom.measureCharMinor;t||(t=document.createElement("DIV"),t.className="vis-text vis-minor vis-measure",t.style.position="absolute",t.appendChild(document.createTextNode("0")),this.dom.foreground.appendChild(t),this.props.minorCharHeight=t.clientHeight,this.props.minorCharWidth=t.clientWidth);var e=this.dom.measureCharMajor;e||(e=document.createElement("DIV"),e.className="vis-text vis-major vis-measure",e.style.position="absolute",e.appendChild(document.createTextNode("0")),this.dom.foreground.appendChild(e),this.props.majorCharHeight=e.clientHeight,this.props.majorCharWidth=e.clientWidth)};t.exports=o},function(t,e,i){function o(t,e,i,s){this.moment=n,this.current=this.moment(),this._start=this.moment(),this._end=this.moment(),this.autoScale=!0,this.scale="day",this.step=1,this.setRange(t,e,i),this.switchedDay=!1,this.switchedMonth=!1,this.switchedYear=!1,Array.isArray(s)?this.hiddenDates=s:this.hiddenDates=void 0!=s?[s]:[],this.format=o.FORMAT}var n=i(2),s=i(30),r=i(1);o.FORMAT={minorLabels:{millisecond:"SSS",second:"s",minute:"HH:mm",hour:"HH:mm",weekday:"ddd D",day:"D",month:"MMM",year:"YYYY"},majorLabels:{millisecond:"HH:mm:ss",second:"D MMMM HH:mm",minute:"ddd D MMMM",hour:"ddd D MMMM",weekday:"MMMM YYYY",day:"MMMM YYYY",month:"YYYY",year:""}},o.prototype.setMoment=function(t){this.moment=t,this.current=this.moment(this.current),this._start=this.moment(this._start),this._end=this.moment(this._end)},o.prototype.setFormat=function(t){var e=r.deepExtend({},o.FORMAT);this.format=r.deepExtend(e,t)},o.prototype.setRange=function(t,e,i){if(!(t instanceof Date&&e instanceof Date))throw"No legal start or end date in method setRange";this._start=void 0!=t?this.moment(t.valueOf()):Date.now(),this._end=void 0!=e?this.moment(e.valueOf()):Date.now(),this.autoScale&&this.setMinimumStep(i)},o.prototype.start=function(){this.current=this._start.clone(),this.roundToMinor()},o.prototype.roundToMinor=function(){switch(this.scale){case"year":this.current.year(this.step*Math.floor(this.current.year()/this.step)),this.current.month(0);case"month":this.current.date(1);case"day":case"weekday":this.current.hours(0);case"hour":this.current.minutes(0);case"minute":this.current.seconds(0);case"second":this.current.milliseconds(0)}if(1!=this.step)switch(this.scale){case"millisecond":this.current.subtract(this.current.milliseconds()%this.step,"milliseconds");break;case"second":this.current.subtract(this.current.seconds()%this.step,"seconds");break;case"minute":this.current.subtract(this.current.minutes()%this.step,"minutes");break;case"hour":this.current.subtract(this.current.hours()%this.step,"hours");break;case"weekday":case"day":this.current.subtract((this.current.date()-1)%this.step,"day");break;case"month":this.current.subtract(this.current.month()%this.step,"month");break;case"year":this.current.subtract(this.current.year()%this.step,"year")}},o.prototype.hasNext=function(){return this.current.valueOf()<=this._end.valueOf()},o.prototype.next=function(){var t=this.current.valueOf();if(this.current.month()<6)switch(this.scale){case"millisecond":this.current.add(this.step,"millisecond");break;case"second":this.current.add(this.step,"second");break;case"minute":this.current.add(this.step,"minute");break;case"hour":this.current.add(this.step,"hour"),this.current.subtract(this.current.hours()%this.step,"hour");break;case"weekday":case"day":this.current.add(this.step,"day");break;case"month":this.current.add(this.step,"month");break;case"year":this.current.add(this.step,"year")}else switch(this.scale){case"millisecond":this.current.add(this.step,"millisecond");break;case"second":this.current.add(this.step,"second");break;case"minute":this.current.add(this.step,"minute");break;case"hour":this.current.add(this.step,"hour");break;case"weekday":case"day":this.current.add(this.step,"day");break;case"month":this.current.add(this.step,"month");break;case"year":this.current.add(this.step,"year")}if(1!=this.step)switch(this.scale){case"millisecond":this.current.milliseconds()0?t.step:1,this.autoScale=!1)},o.prototype.setAutoScale=function(t){this.autoScale=t},o.prototype.setMinimumStep=function(t){if(void 0!=t){31104e9>t&&(this.scale="year",this.step=1e3),15552e9>t&&(this.scale="year",this.step=500),31104e8>t&&(this.scale="year",this.step=100),15552e8>t&&(this.scale="year",this.step=50),31104e7>t&&(this.scale="year",this.step=10),15552e7>t&&(this.scale="year",this.step=5),31104e6>t&&(this.scale="year",this.step=1),7776e6>t&&(this.scale="month",this.step=3),2592e6>t&&(this.scale="month",this.step=1),432e6>t&&(this.scale="day",this.step=5),1728e5>t&&(this.scale="day",this.step=2),864e5>t&&(this.scale="day",this.step=1),432e5>t&&(this.scale="weekday",this.step=1),144e5>t&&(this.scale="hour",this.step=4),36e5>=t&&(this.scale="hour",this.step=1),9e5>t&&(this.scale="minute",this.step=15),6e5>t&&(this.scale="minute",this.step=10),3e5>t&&(this.scale="minute",this.step=5),6e4>t&&(this.scale="minute",this.step=1),15e3>t&&(this.scale="second",this.step=15),1e4>t&&(this.scale="second",this.step=10),5e3>t&&(this.scale="second",this.step=5),1e3>t&&(this.scale="second",this.step=1),200>t&&(this.scale="millisecond",this.step=200),100>t&&(this.scale="millisecond",this.step=100),50>t&&(this.scale="millisecond",this.step=50),10>t&&(this.scale="millisecond",this.step=10),5>t&&(this.scale="millisecond",this.step=5),1>t&&(this.scale="millisecond",this.step=1)}},o.snap=function(t,e,i){var o=n(t);if("year"==e){var s=o.year()+Math.round(o.month()/12);o.year(Math.round(s/i)*i),o.month(0),o.date(0),o.hours(0),o.minutes(0),o.seconds(0),o.milliseconds(0)}else if("month"==e)o.date()>15?(o.date(1),o.add(1,"month")):o.date(1),o.hours(0),o.minutes(0),o.seconds(0),o.milliseconds(0);else if("day"==e){switch(i){case 5:case 2:o.hours(24*Math.round(o.hours()/24));break;default:o.hours(12*Math.round(o.hours()/12))}o.minutes(0),o.seconds(0),o.milliseconds(0)}else if("weekday"==e){switch(i){case 5:case 2:o.hours(12*Math.round(o.hours()/12));break;default:o.hours(6*Math.round(o.hours()/6))}o.minutes(0),o.seconds(0),o.milliseconds(0)}else if("hour"==e){switch(i){case 4:o.minutes(60*Math.round(o.minutes()/60));break;default:o.minutes(30*Math.round(o.minutes()/30))}o.seconds(0),o.milliseconds(0)}else if("minute"==e){switch(i){case 15:case 10:o.minutes(5*Math.round(o.minutes()/5)),o.seconds(0);break;case 5:o.seconds(60*Math.round(o.seconds()/60));break;default:o.seconds(30*Math.round(o.seconds()/30))}o.milliseconds(0)}else if("second"==e)switch(i){case 15:case 10:o.seconds(5*Math.round(o.seconds()/5)),o.milliseconds(0);break;case 5:o.milliseconds(1e3*Math.round(o.milliseconds()/1e3));break;default:o.milliseconds(500*Math.round(o.milliseconds()/500))}else if("millisecond"==e){var r=i>5?i/2:1;o.milliseconds(Math.round(o.milliseconds()/r)*r)}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}var t=this.moment(this.current);switch(this.scale){case"millisecond":return 0==t.milliseconds();case"second":return 0==t.seconds();case"minute":return 0==t.hours()&&0==t.minutes();case"hour":return 0==t.hours();case"weekday":case"day":return 1==t.date();case"month":return 0==t.month();case"year":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?this.moment(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?this.moment(t).format(e):""},o.prototype.getClassName=function(){function t(t){return t/r%2==0?" vis-even":" vis-odd"}function e(t){return t.isSame(Date.now(),"day")?" vis-today":t.isSame(o().add(1,"day"),"day")?" vis-tomorrow":t.isSame(o().add(-1,"day"),"day")?" vis-yesterday":""}function i(t){return t.isSame(Date.now(),"month")?" vis-current-month":""}var o=this.moment,n=this.moment(this.current),s=n.locale?n.locale("en"):n.lang("en"),r=this.step;switch(this.scale){case"millisecond":return t(s.milliseconds()).trim();case"second":return t(s.seconds()).trim();case"minute":return t(s.minutes()).trim();case"hour":var a=s.hours();return 4==this.step&&(a=a+"-h"+(a+4)),"vis-h"+a+e(s)+t(s.hours());case"weekday":return"vis-"+s.format("dddd").toLowerCase()+e(s)+function(t){return t.isSame(Date.now(),"week")?" vis-current-week":""}(s)+t(s.date());case"day":var h=s.date();return"vis-day"+h+" vis-"+s.format("MMMM").toLowerCase()+i(s)+t(h-1);case"month":return"vis-"+s.format("MMMM").toLowerCase()+i(s)+t(s.month());case"year":var d=s.year();return"vis-year"+d+function(t){return t.isSame(Date.now(),"year")?" vis-current-year":""}(s)+t(d);default:return""}},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;["tap","doubletap","press","pinch","pan","panstart","panmove","panend"].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(35),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,void 0!==(s="function"==typeof o?o.apply(e,n):o)&&(t.exports=s)}(0,function(){function t(t){var e,i=t&&t.preventDefault||!1,o=t&&t.container||window,n={},s={keydown:{},keyup:{}},r={};for(e=97;e<=122;e++)r[String.fromCharCode(e)]={code:e-97+65,shift:!1};for(e=65;e<=90;e++)r[String.fromCharCode(e)]={code:e,shift:!0};for(e=0;e<=9;e++)r[""+e]={code:48+e,shift:!1};for(e=1;e<=12;e++)r["F"+e]={code:111+e,shift:!1};for(e=0;e<=9;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;n1e3&&(o=1e3),e.redraw(),e.body.emitter.emit("currentTimeTick"),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=Date.now();this.offset=e-i,this.redraw()},o.prototype.getCurrentTime=function(){return new Date(Date.now()+this.offset)},t.exports=o},function(t,e,i){function o(t,e){this.body=t,this.defaultOptions={type:null,orientation:{item:"bottom"},align:"auto",stack:!0,groupOrderSwap:function(t,e,i){var o=e.order;e.order=t.order,t.order=o},groupOrder:"order",selectable:!0,multiselect:!1,itemsAlwaysDraggable:!1,editable:{updateTime:!1,updateGroup:!1,add:!1,remove:!1},groupEditable:{order:!1,add:!1,remove:!1},snap:d.snap,onAdd:function(t,e){e(t)},onUpdate:function(t,e){e(t)},onMove:function(t,e){e(t)},onRemove:function(t,e){e(t)},onMoving:function(t,e){e(t)},onAddGroup:function(t,e){e(t)},onMoveGroup:function(t,e){e(t)},onRemoveGroup:function(t,e){e(t)},margin:{item:{horizontal:10,vertical:10},axis:20}},this.options=r.extend({},this.defaultOptions),this.itemOptions={type:{start:"Date",end:"Date"}},this.conversion={toScreen:t.util.toScreen,toTime:t.util.toTime},this.dom={},this.props={},this.hammer=null;var i=this;this.itemsData=null,this.groupsData=null,this.itemListeners={add:function(t,e,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.groups={},this.groupIds=[],this.selection=[],this.touchParams={},this.groupTouchParams={},this._create(),this.setOptions(e)}var n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},s=i(23),r=i(1),a=i(9),h=i(11),d=i(33),l=i(29),u=i(40),c=i(42),p=i(43),f=i(45),m=i(46),v=i(47),y="__ungrouped__",g="__background__";o.prototype=new l,o.types={background:v,box:p,range:m,point:f},o.prototype._create=function(){var t=document.createElement("div");t.className="vis-itemset",t["timeline-itemset"]=this,this.dom.frame=t;var e=document.createElement("div");e.className="vis-background",t.appendChild(e),this.dom.background=e;var i=document.createElement("div");i.className="vis-foreground",t.appendChild(i),this.dom.foreground=i;var o=document.createElement("div");o.className="vis-axis",this.dom.axis=o;var n=document.createElement("div");n.className="vis-labelset",this.dom.labelSet=n,this._updateUngrouped();var r=new c(g,null,this);r.show(),this.groups[g]=r,this.hammer=new s(this.body.dom.centerContainer),this.hammer.on("hammer.input",function(t){t.isFirst&&this._onTouch(t)}.bind(this)),this.hammer.on("panstart",this._onDragStart.bind(this)),this.hammer.on("panmove",this._onDrag.bind(this)),this.hammer.on("panend",this._onDragEnd.bind(this)),this.hammer.get("pan").set({threshold:5,direction:s.DIRECTION_HORIZONTAL}),this.hammer.on("tap",this._onSelectItem.bind(this)),this.hammer.on("press",this._onMultiSelectItem.bind(this)),this.hammer.on("doubletap",this._onAddItem.bind(this)),this.groupHammer=new s(this.body.dom.leftContainer),this.groupHammer.on("panstart",this._onGroupDragStart.bind(this)),this.groupHammer.on("panmove",this._onGroupDrag.bind(this)),this.groupHammer.on("panend",this._onGroupDragEnd.bind(this)),this.groupHammer.get("pan").set({threshold:5,direction:s.DIRECTION_HORIZONTAL}),this.show()},o.prototype.setOptions=function(t){if(t){var e=["type","align","order","stack","selectable","multiselect","itemsAlwaysDraggable","multiselectPerGroup","groupOrder","dataAttributes","template","groupTemplate","hide","snap","groupOrderSwap"];r.selectiveExtend(e,this.options,t),"orientation"in t&&("string"==typeof t.orientation?this.options.orientation.item="top"===t.orientation?"top":"bottom":"object"===n(t.orientation)&&"item"in t.orientation&&(this.options.orientation.item=t.orientation.item)),"margin"in t&&("number"==typeof t.margin?(this.options.margin.axis=t.margin,this.options.margin.item.horizontal=t.margin,this.options.margin.item.vertical=t.margin):"object"===n(t.margin)&&(r.selectiveExtend(["axis"],this.options.margin,t.margin),"item"in t.margin&&("number"==typeof t.margin.item?(this.options.margin.item.horizontal=t.margin.item,this.options.margin.item.vertical=t.margin.item):"object"===n(t.margin.item)&&r.selectiveExtend(["horizontal","vertical"],this.options.margin.item,t.margin.item)))),"editable"in t&&("boolean"==typeof t.editable?(this.options.editable.updateTime=t.editable,this.options.editable.updateGroup=t.editable,this.options.editable.add=t.editable,this.options.editable.remove=t.editable):"object"===n(t.editable)&&r.selectiveExtend(["updateTime","updateGroup","add","remove"],this.options.editable,t.editable)),"groupEditable"in t&&("boolean"==typeof t.groupEditable?(this.options.groupEditable.order=t.groupEditable,this.options.groupEditable.add=t.groupEditable,this.options.groupEditable.remove=t.groupEditable):"object"===n(t.groupEditable)&&r.selectiveExtend(["order","add","remove"],this.options.groupEditable,t.groupEditable));["onAdd","onUpdate","onRemove","onMove","onMoving","onAddGroup","onMoveGroup","onRemoveGroup"].forEach(function(e){var i=t[e];if(i){if(!(i instanceof Function))throw new Error("option "+e+" must be a function "+e+"(item, callback)");this.options[e]=i}}.bind(this)),this.markDirty()}},o.prototype.markDirty=function(t){this.groupIds=[],this.stackDirty=!0,t&&t.refreshItems&&r.forEach(this.items,function(t){t.dirty=!0,t.displayed&&t.redraw()})},o.prototype.destroy=function(){this.hide(),this.setItems(null),this.setGroups(null),this.hammer=null,this.body=null,this.conversion=null},o.prototype.hide=function(){this.dom.frame.parentNode&&this.dom.frame.parentNode.removeChild(this.dom.frame),this.dom.axis.parentNode&&this.dom.axis.parentNode.removeChild(this.dom.axis),this.dom.labelSet.parentNode&&this.dom.labelSet.parentNode.removeChild(this.dom.labelSet)},o.prototype.show=function(){this.dom.frame.parentNode||this.body.dom.center.appendChild(this.dom.frame),this.dom.axis.parentNode||this.body.dom.backgroundVertical.appendChild(this.dom.axis),this.dom.labelSet.parentNode||this.body.dom.left.appendChild(this.dom.labelSet)},o.prototype.setSelection=function(t){var e,i,o,n;for(void 0==t&&(t=[]),Array.isArray(t)||(t=[t]),e=0,i=this.selection.length;ee&&o.push(h.id)}return o},o.prototype._deselect=function(t){for(var e=this.selection,i=0,o=e.length;io)return}}if(e&&e!=this.groupTouchParams.group){var h=this.groupsData,d=h.get(e.groupId),l=h.get(this.groupTouchParams.group.groupId);l&&d&&(this.options.groupOrderSwap(l,d,this.groupsData),this.groupsData.update(l),this.groupsData.update(d));var u=this.groupsData.getIds({order:this.options.groupOrder});if(!r.equalArray(u,this.groupTouchParams.originalOrder))for(var h=this.groupsData,c=this.groupTouchParams.originalOrder,p=this.groupTouchParams.group.groupId,f=Math.min(c.length,u.length),m=0,v=0,y=0;m=f)break;if(u[m+v]!=p)if(c[m+y]!=p){var g=u.indexOf(c[m+y]),b=h.get(u[m+v]),_=h.get(c[m+y]);this.options.groupOrderSwap(b,_,h),h.update(b),h.update(_);var w=u[m+v];u[m+v]=c[m+y],u[g]=w,m++}else y=1;else v=1}}}},o.prototype._onGroupDragEnd=function(t){if(this.options.groupEditable.order&&this.groupTouchParams.group){t.stopPropagation();var e=this,i=e.groupTouchParams.group.groupId,o=e.groupsData.getDataSet(),n=r.extend({},o.get(i));e.options.onMoveGroup(n,function(t){if(t)t[o._fieldId]=i,o.update(t);else{var n=o.getIds({order:e.options.groupOrder});if(!r.equalArray(n,e.groupTouchParams.originalOrder))for(var s=e.groupTouchParams.originalOrder,a=Math.min(s.length,n.length),h=0;h=a)break;var d=n.indexOf(s[h]),l=o.get(n[h]),u=o.get(s[h]);e.options.groupOrderSwap(l,u,o),groupsData.update(l),groupsData.update(u);var c=n[h];n[h]=s[h],n[d]=c,h++}}}),e.body.emitter.emit("groupDragged",{groupId:i})}},o.prototype._onSelectItem=function(t){if(this.options.selectable){var e=t.srcEvent&&(t.srcEvent.ctrlKey||t.srcEvent.metaKey),i=t.srcEvent&&t.srcEvent.shiftKey;if(e||i)return void this._onMultiSelectItem(t);var o=this.getSelection(),n=this.itemFromTarget(t),s=n?[n.id]:[];this.setSelection(s);var r=this.getSelection();(r.length>0||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(o){var n=e.itemsData.get(o.id);this.options.onUpdate(n,function(t){t&&e.itemsData.getDataSet().update(t)})}else{var s=r.getAbsoluteLeft(this.dom.frame),a=t.center.x-s,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]=r.randomUUID();var p=this.groupFromTarget(t);p&&(u.group=p.groupId),u=this._cloneItemData(u),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():[];if((t.srcEvent&&t.srcEvent.shiftKey||!1)&&this.options.multiselect){var n=this.itemsData.get(e.id).group,s=void 0;this.options.multiselectPerGroup&&i.length>0&&(s=this.itemsData.get(i[0]).group),this.options.multiselectPerGroup&&void 0!=s&&s!=n||i.push(e.id);var r=o._getItemRange(this.itemsData.get(i,this.itemOptions));if(!this.options.multiselectPerGroup||s==n){i=[];for(var a in this.items)if(this.items.hasOwnProperty(a)){var h=this.items[a],d=h.data.start,l=void 0!==h.data.end?h.data.end:d;!(d>=r.min&&l<=r.max)||this.options.multiselectPerGroup&&s!=this.itemsData.get(h.id).group||h instanceof v||i.push(h.id)}}}else{var u=i.indexOf(e.id);-1==u?i.push(e.id):i.splice(u,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;i=r.top&&er.top)return n}else if(0===i&&e0){var t=this;this.resetSubgroups(),n.forEach(this.visibleItems,function(e){void 0!==e.data.subgroup&&(t.subgroups[e.data.subgroup].height=Math.max(t.subgroups[e.data.subgroup].height,e.height),t.subgroups[e.data.subgroup].visible=!0)})}},o.prototype._calculateHeight=function(t,e){if(null!=e&&null!=e.rowHeights&&null!=e.rowHeights[this.groupId])return e.rowHeights[this.groupId];var i,o=this.visibleItems;if(o.length>0){var s=o[0].top,r=o[0].top+o[0].height;if(n.forEach(o,function(t){s=Math.min(s,t.top),r=Math.max(r,t.top+t.height)}),s>t.axis){var a=s-t.axis;r-=a,n.forEach(o,function(t){t.top-=a})}i=r+t.item.vertical/2}else i=0;return i=Math.max(i,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,e,i,o){if(this.items[t.id]=t,t.setParent(this),this.stackDirty=!0,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)&&this.itemSet.body){var n=this.itemSet.body.range;this._checkIfVisible(t,this.visibleItems,n,e,i,o)}},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;i0)for(a=0;a=0&&(s=e[r],!n(s));r--){var a=o[s.id];void 0===a&&(a=!0,i.push(s))}for(r=t+1;re.left&&t.top-i.vertical+.001e.top}},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(40));o.prototype=Object.create(n.prototype),o.prototype.redraw=function(t,e,i){this.visibleItems=this._updateVisibleItems(this.orderedItems,this.visibleItems,t);for(var o=0,n=this.visibleItems.length;ot.start-e&&this.data.start0){var e=[];if(Array.isArray(this.options.dataAttributes))e=this.options.dataAttributes;else{if("all"!=this.options.dataAttributes)return;e=Object.keys(this.data)}for(var i=0;it.start-e&&this.data.start=t.start},o.prototype.redraw=function(){var t=this,e=this.dom;if(!e){if(this.dom={},e=this.dom,e.box=document.createElement("div"),e.frame=document.createElement("div"),e.frame.className="vis-item-overflow",e.box.appendChild(e.frame),e.content=document.createElement("div"),e.content.className="vis-item-content",e.frame.appendChild(e.content),e.frame.addEventListener("mouseover",this.mouseoverCallback),this.data.ieComplexTooltip){var i=void 0;e.frame.addEventListener("mouseenter",function(e){clearTimeout(i),i=setTimeout(function(){if(!e.target.querySelector(".editing-cell-component:not(.ng-hide)"))return t.data.mouseOver(e)},200)})}e.frame.addEventListener("mouseout",this.mouseoutCallback),e.box["timeline-item"]=this,this.dirty=!0}if(!this.parent)throw new Error("Cannot redraw item: no parent attached");if(!e.box.parentNode){var o=this.parent.dom.foreground;if(!o)throw new Error("Cannot redraw item: parent has no foreground container element");o.appendChild(e.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 n=(this.options.editable.updateTime||this.options.editable.updateGroup||!0===this.editable)&&!1!==this.editable,s=(this.data.className?" "+this.data.className:"")+(this.selected?" vis-selected":"")+(n?" vis-editable":" vis-readonly");e.box.className=this.baseClassName+s,this.dirty=!1}this._repaintDeleteButton(e.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,e,i,o,n){var s=this.conversion.toScreen(this.data.start),r=this.conversion.toScreen(this.data.end),a=void 0,h=void 0;if(0==e.options.gap){var d=new Date(this.data.start),l=new Date(this.data.end),u=0,c=0;o&&(o.forEach(function(t){var e=t.__time.toDate();d>e&&u++,l>e&&c++}),o.length>0&&(s=n*u,r=n*c,this.dom.box.classList.add("tablemode-fit")))}else if(this.data.id&&o&&o.length>0&&i){var p=this.data.prop;if("tablemode"==p.type||"tablemode_multiple_values"==p.type){var f=this.data.id.split("_"),m=parseInt(f[1]);this.dom.box.classList.remove("tablemode-fit");var v=m*n,y=(m+1)*n;s=v,r=0==s?n:y}else if(e){var g=new Date(e.start),b=1/e.options.gap,_=new Date(this.data.start),w=Math.abs(_.getTime()-g.getTime()),x=parseFloat(w/36e5).toFixed(2),k=b*x*n;if(s=k,new Date(this.data.end)!=new Date(this.data.start)){var O=new Date(this.data.end),M=Math.abs(O.getTime()-_.getTime());r=M/36e5*n*b+s}}}if(void 0===t||!0===t){var S=this.parent.width;s<-S&&(s=-S);var D=2*S;r>D&&(r=D)}var E=Math.max(r-s,1)+2;switch(this.overflow?(this.left=s,this.width=E+this.props.content.width,h=this.props.content.width):(this.left=s,this.width=E,h=Math.min(r-s,this.props.content.width)),this.dom.box.style.transform="translateX("+this.left+"px)",this.dom.box.style.width=E+"px",this.options.align){case"left":a=0;break;case"right":a=Math.max(E-h,0);break;case"center":a=Math.max((E-h)/2,0);break;default:a=this.overflow?r>0?Math.max(-s,0):-h:s<0?-s:0}this.dom.content.style.transform="translateX("+a+"px)"},o.prototype.repositionY=function(){var t=this.options.orientation.item,e=this.dom.box,i=this.top,o=i.top,n=i.height,s=this.parent.height;"top"==t?e.style.setProperty("top",o+"px"):e.style.setProperty("top",s-o-n+"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){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(44)),s=i(42),r=i(46);o.prototype=new n(null,null,null),o.prototype.baseClassName="vis-item vis-background",o.prototype.stack=!1,o.prototype.isVisible=function(t){return!0},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){Object.defineProperty(e,"__esModule",{value:!0});var i="string",o="boolean",n="number",s="object",r={configure:{enabled:{boolean:o},filter:{boolean:o,function:"function"},container:{dom:"dom"},__type__:{object:s,boolean:o,function:"function"}},align:{string:i},autoResize:{boolean:o},throttleRedraw:{number:n},clickToUse:{boolean:o},dataAttributes:{string:i,array:"array"},editable:{add:{boolean:o,undefined:"undefined"},remove:{boolean:o,undefined:"undefined"},updateGroup:{boolean:o,undefined:"undefined"},updateTime:{boolean:o,undefined:"undefined"},__type__:{boolean:o,object:s}},end:{number:n,date:"date",string:i,moment:"moment"},format:{minorLabels:{millisecond:{string:i,undefined:"undefined"},second:{string:i,undefined:"undefined"},minute:{string:i,undefined:"undefined"},hour:{string:i,undefined:"undefined"},weekday:{string:i,undefined:"undefined"},day:{string:i,undefined:"undefined"},month:{string:i,undefined:"undefined"},year:{string:i,undefined:"undefined"},__type__:{object:s}},majorLabels:{millisecond:{string:i,undefined:"undefined"},second:{string:i,undefined:"undefined"},minute:{string:i,undefined:"undefined"},hour:{string:i,undefined:"undefined"},weekday:{string:i,undefined:"undefined"},day:{string:i,undefined:"undefined"},month:{string:i,undefined:"undefined"},year:{string:i,undefined:"undefined"},__type__:{object:s}},__type__:{object:s}},moment:{function:"function"},groupOrder:{string:i,function:"function"},groupEditable:{add:{boolean:o,undefined:"undefined"},remove:{boolean:o,undefined:"undefined"},order:{boolean:o,undefined:"undefined"},__type__:{boolean:o,object:s}},groupOrderSwap:{function:"function"},height:{string:i,number:n},hiddenDates:{start:{date:"date",number:n,string:i,moment:"moment"},end:{date:"date",number:n,string:i,moment:"moment"},repeat:{string:i},__type__:{object:s,array:"array"}},itemsAlwaysDraggable:{boolean:o},locale:{string:i},locales:{__any__:{any:"any"},__type__:{object:s}},margin:{axis:{number:n},item:{horizontal:{number:n,undefined:"undefined"},vertical:{number:n,undefined:"undefined"},__type__:{object:s,number:n}},__type__:{object:s,number:n}},max:{date:"date",number:n,string:i,moment:"moment"},maxHeight:{number:n,string:i},maxMinorChars:{number:n},gap:{number:n},itemsFit:{array:"array"},min:{date:"date",number:n,string:i,moment:"moment"},minHeight:{number:n,string:i},moveable:{boolean:o},multiselect:{boolean:o},multiselectPerGroup:{boolean:o},onAdd:{function:"function"},onUpdate:{function:"function"},onMove:{function:"function"},onMoving:{function:"function"},onRemove:{function:"function"},onAddGroup:{function:"function"},onMoveGroup:{function:"function"},onRemoveGroup:{function:"function"},order:{function:"function"},orientation:{axis:{string:i,undefined:"undefined"},item:{string:i,undefined:"undefined"},__type__:{string:i,object:s}},selectable:{boolean:o},showCurrentTime:{boolean:o},showMajorLabels:{boolean:o},showMinorLabels:{boolean:o},showMinorLines:{boolean:o},stack:{boolean:o},snap:{function:"function",null:"null"},start:{date:"date",number:n,string:i,moment:"moment"},template:{function:"function"},groupTemplate:{function:"function"},timeAxis:{scale:{string:i,undefined:"undefined"},step:{number:n,undefined:"undefined"},__type__:{object:s}},type:{string:i},width:{string:i,number:n},zoomable:{boolean:o},zoomKey:{string:["ctrlKey","altKey","metaKey",""]},zoomMax:{number:n},zoomMin:{number:n},__type__:{object:s}},a={global:{align:["center","left","right"],autoResize:!0,throttleRedraw:[10,0,1e3,10],clickToUse:!1,editable:{add:!1,remove:!1,updateGroup:!1,updateTime:!1},end:"",format:{minorLabels:{millisecond:"SSS",second:"s",minute:"HH:mm",hour:"HH:mm",weekday:"ddd D",day:"D",month:"MMM",year:"YYYY"},majorLabels:{millisecond:"HH:mm:ss",second:"D MMMM HH:mm",minute:"ddd D MMMM",hour:"ddd D MMMM",weekday:"MMMM YYYY",day:"MMMM YYYY",month:"YYYY",year:""}},groupsDraggable:!1,height:"",locale:"",margin:{axis:[20,0,100,1],item:{horizontal:[10,0,100,1],vertical:[10,0,100,1]}},max:"",maxHeight:"",maxMinorChars:[7,0,20,1],min:"",minHeight:"",moveable:!1,multiselect:!1,multiselectPerGroup:!1,orientation:{axis:["both","bottom","top"],item:["bottom","top"]},selectable:!0,showCurrentTime:!1,showMajorLabels:!0,showMinorLabels:!0,showMinorLines:!0,stack:!0,start:"",type:["box","point","range","background"],width:"100%",zoomable:!0,zoomKey:["ctrlKey","altKey","metaKey",""],zoomMax:[31536e10,10,31536e10,1],zoomMin:[10,10,31536e10,1]}};e.allOptions=r,e.configureOptions=a},function(t,e,i){function o(t){return t&&t.__esModule?t:{default:t}}function n(t,e,i,o){if(!(Array.isArray(i)||i instanceof u||i instanceof c)&&i instanceof Object){var n=o;o=i,i=n}var s=this;this.defaultOptions={start:null,end:null,autoResize:!0,orientation:{axis:"bottom",item:"bottom"},moment:d,width:null,height:null,maxHeight:null,minHeight:null},this.options=l.deepExtend({},this.defaultOptions),this._create(t),this.components=[],this.body={dom:this.dom,domProps:this.props,emitter:{on:this.on.bind(this),off:this.off.bind(this),emit:this.emit.bind(this)},hiddenDates:[],util:{toScreen:s._toScreen.bind(s),toGlobalScreen:s._toGlobalScreen.bind(s),toTime:s._toTime.bind(s),toGlobalTime:s._toGlobalTime.bind(s)}},this.range=new p(this.body),this.components.push(this.range),this.body.range=this.range,this.timeAxis=new m(this.body),this.components.push(this.timeAxis),this.currentTime=new v(this.body),this.components.push(this.currentTime),this.linegraph=new g(this.body),this.components.push(this.linegraph),this.itemsData=null,this.groupsData=null,this.on("tap",function(t){s.emit("click",s.getEventProperties(t))}),this.on("doubletap",function(t){s.emit("doubleClick",s.getEventProperties(t))}),this.dom.root.oncontextmenu=function(t){s.emit("contextmenu",s.getEventProperties(t))},o&&this.setOptions(o),i&&this.setGroups(i),e&&this.setItems(e),this._redraw()}var s=i(21),r=o(s),a=i(27),h=o(a),d=(i(13),i(23),i(2)),l=i(1),u=i(9),c=i(11),p=i(28),f=i(31),m=i(32),v=i(38),y=i(36),g=i(50),b=i(27).printStyle,_=i(62).allOptions,w=i(62).configureOptions;n.prototype=new f,n.prototype.setOptions=function(t){!0===h.default.validate(t,_)&&console.log("%cErrors have been found in the supplied options object.",b),f.prototype.setOptions.call(this,t)},n.prototype.setItems=function(t){var e,i=null==this.itemsData;if(e=t?t instanceof u||t instanceof c?t:new u(t,{type:{start:"Date",end:"Date"}}):null,this.itemsData=e,this.linegraph&&this.linegraph.setItems(e),i)if(void 0!=this.options.start||void 0!=this.options.end){var o=void 0!=this.options.start?this.options.start:null,n=void 0!=this.options.end?this.options.end:null;this.setWindow(o,n,{animation:!1})}else this.fit({animation:!1})},n.prototype.setGroups=function(t){var e;e=t?t instanceof u||t instanceof c?t:new u(t):null,this.groupsData=e,this.linegraph.setGroups(e)},n.prototype.getLegend=function(t,e,i){return void 0===e&&(e=15),void 0===i&&(i=15),void 0!==this.linegraph.groups[t]?this.linegraph.groups[t].getLegend(e,i):"cannot find group:'"+t+"'"},n.prototype.isGroupVisible=function(t){return void 0!==this.linegraph.groups[t]&&(this.linegraph.groups[t].visible&&(void 0===this.linegraph.options.groups.visibility[t]||1==this.linegraph.options.groups.visibility[t]))},n.prototype.getDataRange=function(){var t=null,e=null;for(var i in this.linegraph.groups)if(this.linegraph.groups.hasOwnProperty(i)&&1==this.linegraph.groups[i].visible)for(var o=0;os?s:t,e=null==e?s:e0){var h={};for(this._getRelevantData(r,h,o,n),this._applySampling(r,h),e=0;e0)switch(t.options.style){case"line":l.hasOwnProperty(r[e])||(l[r[e]]=p.calcPath(h[r[e]],t)),p.draw(l[r[e]],t,this.framework);case"point":case"points":"point"!==t.options.style&&"points"!==t.options.style&&!0!==t.options.drawPoints.enabled||f.draw(h[r[e]],t,this.framework)}}}return a.cleanupElements(this.svgElements),!1},o.prototype._stack=function(t,e){var i=void 0,o=void 0,n=void 0,s=void 0,r=void 0;i=0;for(var a=0;at[a].x){r=e[h],s=0===h?r:e[h-1],i=h;break}}void 0===r&&(s=e[e.length-1],r=e[e.length-1]),o=r.x-s.x,n=r.y-s.y,t[a].y=0===o?t[a].orginalY+r.y:t[a].orginalY+n/o*(t[a].x-s.x)+s.y}},o.prototype._getRelevantData=function(t,e,i,o){var n=void 0,s=void 0,r=void 0,a=void 0;if(t.length>0)for(s=0;s0)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=new Array(r),l=0;l0){for(r=0;r0&&(n=this.groups[t[r]],!0===d.stack&&"bar"===d.style?"left"===d.yAxisOrientation?a=a.concat(n.getItems()):h=h.concat(n.getItems()):i[t[r]]=n.getYRange(o,t[r]));s.getStackedYRange(a,i,t,"__barStackLeft","left"),s.getStackedYRange(h,i,t,"__barStackRight","right")}},o.prototype._updateYAxis=function(t,e){var i=this,o=!1,n=!1,s=!1,r=1e9,a=1e9,h=-1e9,d=-1e9,l=void 0,u=void 0;if(t.length>0){for(var c=0;cl?l:r,h=hl?l:a,d=d0?(s=e.body.totalizer.periods.filter(function(t){return t.end.valueOf()>e.body.range.start&&t.end.valueOf()0&&void 0!==arguments[0]?arguments[0]:null;return t&&t in this.yAxisLeft?this.yAxisLeft[t]:this.yAxisLeft[Object.keys(this.yAxisLeft)[0]]},o.prototype._insertYAxisLeft=function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(e||0===Object.keys(this.yAxisLeft).length){var o=[this.body,this.options.dataAxis,this.svg,this.options.groups],n=new(Function.prototype.bind.apply(h,[null].concat(o)));i&&(n=new(Function.prototype.bind.apply(m,[null].concat(o)))),this.yAxisLeft[t]=n}},t.exports=o},function(t,e,i){function o(t,e){}var n=i(7),s=i(52);o.drawIcon=function(t,e,i,o,s,r){var a=.5*s,h=n.getSVGElement("rect",r.svgElements,r.svg);h.setAttributeNS(null,"x",e),h.setAttributeNS(null,"y",i-a),h.setAttributeNS(null,"width",o),h.setAttributeNS(null,"height",2*a),h.setAttributeNS(null,"class","vis-outline");var d=Math.round(.3*o),l=t.options.barChart.width,u=l/d,c=Math.round(.4*s),p=Math.round(.75*s),f=Math.round((o-2*d)/3);if(n.drawBar(e+.5*d+f,i+a-c-1,d,c,t.className+" vis-bar",r.svgElements,r.svg,t.style),n.drawBar(e+1.5*d+f+2,i+a-p-1,d,p,t.className+" vis-bar",r.svgElements,r.svg,t.style),1==t.options.drawPoints.enabled){var m={style:t.options.drawPoints.style,styles:t.options.drawPoints.styles,size:t.options.drawPoints.size/u,width:t.options.drawPoints.width,height:t.options.drawPoints.height,className:t.className};n.drawPoint(e+.5*d+f,i+a-c-1,m,r.svgElements,r.svg),n.drawPoint(e+1.5*d+f+2,i+a-p-1,m,r.svgElements,r.svg)}},o.draw=function(t,e,i){var r,a,h,d,l,u,c=[],p={},f=0;for(l=0;l0&&(i=Math.min(i,Math.abs(e[o-1].screen_x-e[o].screen_x))),0===i&&(void 0===t[e[o].screen_x]&&(t[e[o].screen_x]={amount:0,resolved:0,accumulatedPositive:0,accumulatedNegative:0}),t[e[o].screen_x].amount+=1)},o._getSafeDrawData=function(t,e,i){var o,n;return t0?(o=t0){t.sort(function(t,e){return t.screen_x===e.screen_x?t.groupIde[s].screen_y?e[s].screen_y:o,n=nt[r].accumulatedNegative?t[r].accumulatedNegative:o,o=o>t[r].accumulatedPositive?t[r].accumulatedPositive:o,n=n-1||e.id.indexOf("arrow-avg")>-1&&e.withTrend)&&(E=t[l]),u=a.drawPoint(c.screen_x+o,c.screen_y,n(e,void 0,E),i.svgElements,i.svg,c.label,S)}d.push(u)}}return d},o.drawIcon=function(t,e,i,o,s,r){var h=.5*s,d=a.getSVGElement("rect",r.svgElements,r.svg);d.setAttributeNS(null,"x",e),d.setAttributeNS(null,"y",i-h),d.setAttributeNS(null,"width",o),d.setAttributeNS(null,"height",2*h),d.setAttributeNS(null,"class","vis-outline"),a.drawPoint(e+.5*o,i,n(t),r.svgElements,r.svg)},t.exports=o},function(t,e,i){function o(t,e,i,o){this.id=n.randomUUID(),this.body=t;var s=document.querySelector(".data-region.data-container-with-timeline"),r=0;if("flowsheet"===this.body.origin){r=parseInt(this.body.summaryWidth)*this.body.dataRegionDatagrid/100+"px"}else r=s?parseInt(s.offsetWidth/26)+"px":"0px";this.defaultOptions={orientation:"left",showMinorLabels:!0,showMinorLines:!0,showMajorLabels:!0,icons:!1,majorLinesOffset:7,minorLinesOffset:4,labelOffsetX:10,labelOffsetY:2,iconWidth:20,width:r,visible:!0,alignZeros:!0,data:void 0,left:{range:{min:void 0,max:void 0},format:function(t){return""+parseFloat(t.toPrecision(3))},title:{text:void 0,style:void 0}},right:{range:{min:void 0,max:void 0},format:function(t){return""+parseFloat(t.toPrecision(3))},title:{text:void 0,style:void 0}}},this.linegraphOptions=o,this.linegraphSVG=i,this.props={},this.DOMelements={lines:{},labels:{},title:{}},this.dom={},this.scale=void 0,this.range={start:0,end:0},this.options=n.extend({},this.defaultOptions),this.conversionFactor=1,this.setOptions(e),this.width=Number((""+this.options.width).replace("px","")),this.minWidth=this.width,this.height=this.linegraphSVG.getBoundingClientRect().height,this.hidden=!1,this.stepPixels=25,this.zeroCrossing=-1,this.amountOfSteps=-1,this.lineOffset=0,this.master=!0,this.masterAxis=null,this.svgElements={},this.iconsRemoved=!1,this.groups={},this.amountOfGroups=0,this._create(),this.framework={svg:this.svg,svgElements:this.svgElements,options:this.options,groups:this.groups};var a=this;this.body.emitter.on("verticalDrag",function(){a.dom.lineContainer.style.top=a.body.domProps.scrollTop+"px"})}var n=i(1),s=i(7),r=i(29),a=i(54);o.prototype=new r,o.prototype.addGroup=function(t,e){this.groups.hasOwnProperty(t)||(this.groups[t]=e),this.amountOfGroups+=1},o.prototype.updateGroup=function(t,e){this.groups.hasOwnProperty(t)||(this.amountOfGroups+=1),this.groups[t]=e},o.prototype.removeGroup=function(t){this.groups.hasOwnProperty(t)&&(delete this.groups[t],this.amountOfGroups-=1)},o.prototype.setOptions=function(t){if(t){var e=!1;this.options.orientation!==t.orientation&&void 0!==t.orientation&&(e=!0);var i=["orientation","showMinorLabels","showMinorLines","showMajorLabels","icons","majorLinesOffset","minorLinesOffset","labelOffsetX","labelOffsetY","iconWidth","width","visible","data","left","right","alignZeros"];n.selectiveDeepExtend(i,this.options,t),this.minWidth=Number((""+this.options.width).replace("px","")),!0===e&&this.dom.frame&&(this.hide(),this.show())}},o.prototype._create=function(){var t=this.dom,e=this.svg,i=this.height,o=this.options;t.frame=document.createElement("div"),t.lineContainer=document.createElement("div"),e=document.createElementNS("http://www.w3.org/2000/svg","svg"),t.frame.style.setProperty("width",o.width),t.frame.style.setProperty("height",i),t.lineContainer.style.setProperty("width","100%"),t.lineContainer.style.setProperty("height",i),t.lineContainer.style.setProperty("position","relative"),e.style.setProperty("position","absolute"),e.style.setProperty("top","0px"),e.style.setProperty("height","100%"),e.style.setProperty("width","100%"),e.style.setProperty("display","block"),t.frame.appendChild(e)},o.prototype._redrawGroupIcons=function(){s.prepareElements(this.svgElements);var t=void 0,e=this.options.iconWidth,i=11.5;t="left"===this.options.orientation?4:this.width-e-4;var o=Object.keys(this.groups);o.sort(function(t,e){return t=0&&t._redrawLabel(o-2,i.val,e,"vis-y-axis vis-major",t.props.majorCharHeight),!0===t.master&&(n?t._redrawLine(o,e,"vis-grid vis-horizontal vis-major",t.options.majorLinesOffset,t.props.majorLineWidth):t.options.showMinorLines&&t._redrawLine(o,e,"vis-grid vis-horizontal vis-minor",t.options.minorLinesOffset,t.props.minorLineWidth))}),this.verifyResize(e)},o.prototype.verifyResize=function(t){var e=!1,i=0;void 0!==this.options[t].title&&void 0!==this.options[t].title.text&&(i=this.props.titleCharHeight);var o=!0===this.options.icons?Math.max(this.options.iconWidth,i)+this.options.labelOffsetX+15:i+this.options.labelOffsetX+15;return this.maxLabelSize>this.width-o&&!0===this.options.visible?(this.width=this.maxLabelSize+o,this.options.width=this.width+"px",s.cleanupElements(this.DOMelements.lines),s.cleanupElements(this.DOMelements.labels),this.redraw(),e=!0):this.maxLabelSizethis.minWidth?(this.width=Math.max(this.minWidth,this.maxLabelSize+o),this.options.width=this.width+"px",s.cleanupElements(this.DOMelements.lines),s.cleanupElements(this.DOMelements.labels),this.redraw(),e=!0):(s.cleanupElements(this.DOMelements.lines),s.cleanupElements(this.DOMelements.labels)),e},o.prototype.convertValue=function(t){return this.scale.convertValue(t)},o.prototype.screenToValue=function(t){return this.scale.screenToValue(t)},o.prototype._redrawLabel=function(t,e,i,o,n){var r=s.getDOMElement("div",this.DOMelements.labels,this.dom.frame);r.className=o,r.innerText=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.maxLabelSize6&&void 0!==arguments[6]&&arguments[6],a=arguments.length>7&&void 0!==arguments[7]&&arguments[7];if(this.majorSteps=[1,2,5,10],this.minorSteps=[.25,.5,1,2],this.customLines=null,this.containerHeight=n,this.majorCharHeight=s,this._start=t,this._end=e,this.scale=1,this.minorStepIdx=-1,this.magnitudefactor=1,this.determineScale(),this.zeroAlign=r,this.autoScaleStart=i,this.autoScaleEnd=o,this.formattingFunction=a,i||o){ +var h=this,d=function(t){var e=t-t%(h.magnitudefactor*h.minorSteps[h.minorStepIdx]);return t%(h.magnitudefactor*h.minorSteps[h.minorStepIdx])>h.magnitudefactor*h.minorSteps[h.minorStepIdx]*.5?e+h.magnitudefactor*h.minorSteps[h.minorStepIdx]:e};i&&(this._start-=2*this.magnitudefactor*this.minorSteps[this.minorStepIdx],this._start=d(this._start)),o&&(this._end+=this.magnitudefactor*this.minorSteps[this.minorStepIdx],this._end=d(this._end)),this.determineScale()}}var o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t};i.prototype.setCharHeight=function(t){this.majorCharHeight=t},i.prototype.setHeight=function(t){this.containerHeight=t},i.prototype.determineScale=function(){var t=this._end-this._start;this.scale=this.containerHeight/t;var e=this.majorCharHeight/this.scale,i=t>0?Math.round(Math.log(t)/Math.LN10):0;this.minorStepIdx=-1,this.magnitudefactor=Math.pow(10,i);var o=0;i<0&&(o=i);for(var n=!1,s=o;Math.abs(s)<=Math.abs(i);s++){this.magnitudefactor=Math.pow(10,s);for(var r=0;r=e){n=!0,this.minorStepIdx=r;break}}if(!0===n)break}},i.prototype.is_major=function(t){return t%(this.magnitudefactor*this.majorSteps[this.minorStepIdx])==0},i.prototype.getStep=function(){return this.magnitudefactor*this.minorSteps[this.minorStepIdx]},i.prototype.getFirstMajor=function(){var t=this.magnitudefactor*this.majorSteps[this.minorStepIdx];return this.convertValue(this._start+(t-this._start%t)%t)},i.prototype.formatValue=function(t){var e=t.toPrecision(5);return"function"==typeof this.formattingFunction&&(e=this.formattingFunction(t,!0)),"number"==typeof e?""+e:"string"==typeof e?e:t.toPrecision(5)},i.prototype.getLines=function(t){var e=[];if("object"===(void 0===t?"undefined":o(t))&&null!==t&&t.hasOwnProperty("values")&&t.values.length)for(var i=t.values,n=t.hasOwnProperty("labels")&&t.labels.length===t.values.length?t.labels:i,s=0;s1e-5;h+=r)h!=this._start&&e.push({major:this.is_major(h),y:this.convertValue(h),val:this.formatValue(h)});return e},i.prototype.followScale=function(t){var e=this.minorStepIdx,i=this._start,o=this._end,n=this,s=function(){n.magnitudefactor*=2},r=function(){n.magnitudefactor/=2};t.minorStepIdx<=1&&this.minorStepIdx<=1||t.minorStepIdx>1&&this.minorStepIdx>1||(t.minorStepIdxo+1e-5)r(),d=!1;else{if(!this.autoScaleStart&&this._start=0)){r(),d=!1;continue}console.warn("Can't adhere to given 'min' range, due to zeroalign")}this.autoScaleStart&&this.autoScaleEnd&&ue.x?1:-1})):this.itemsData=[]},o.prototype.getItems=function(){return 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","zIndex","excludeFromStacking","excludeFromLegend"];s.selectiveDeepExtend(e,this.options,t),"function"==typeof t.drawPoints&&(t.drawPoints={onRender:t.drawPoints}),s.mergeOptions(this.options,t,"interpolation"),s.mergeOptions(this.options,t,"drawPoints"),s.mergeOptions(this.options,t,"shaded"),t.interpolation&&"object"==n(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))}},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||t.visible,this.style=t.style,this.setOptions(t.options)},o.prototype.getLegend=function(t,e,i,o,n){if(void 0==i||null==i){i={svg:document.createElementNS("http://www.w3.org/2000/svg","svg"),svgElements:{},options:this.options,groups:[this]}}switch(void 0!=o&&null!=o||(o=0),void 0!=n&&null!=n||(n=.5*e),this.options.style){case"line":a.drawIcon(this,o,n,t,e,i);break;case"points":case"point":h.drawIcon(this,o,n,t,e,i);break;case"bar":r.drawIcon(this,o,n,t,e,i)}return{icon:i.svg,label:this.content,orientation:this.options.yAxisOrientation}},o.prototype.getYRange=function(t){for(var e=t[0].y,i=t[0].y,o=0;ot[o].y?t[o].y:e,i=i0){return 1==e.options.interpolation.enabled?o._catmullRom(t,e):o._linear(t)}},o.drawIcon=function(t,e,i,o,s,r){var a,h,d=.5*s,l=n.getSVGElement("rect",r.svgElements,r.svg);if(l.setAttributeNS(null,"x",e),l.setAttributeNS(null,"y",i-d),l.setAttributeNS(null,"width",o),l.setAttributeNS(null,"height",2*d),l.setAttributeNS(null,"class","vis-outline"),a=n.getSVGElement("path",r.svgElements,r.svg),a.setAttributeNS(null,"class",t.className),void 0!==t.style&&a.setAttributeNS(null,"style",t.style),a.setAttributeNS(null,"d","M"+e+","+i+" L"+(e+o)+","+i),1==t.options.shaded.enabled&&(h=n.getSVGElement("path",r.svgElements,r.svg),"top"==t.options.shaded.orientation?h.setAttributeNS(null,"d","M"+e+", "+(i-d)+"L"+e+","+i+" L"+(e+o)+","+i+" L"+(e+o)+","+(i-d)):h.setAttributeNS(null,"d","M"+e+","+i+" L"+e+","+(i+d)+" L"+(e+o)+","+(i+d)+"L"+(e+o)+","+i),h.setAttributeNS(null,"class",t.className+" vis-icon-fill"),void 0!==t.options.shaded.style&&""!==t.options.shaded.style&&h.setAttributeNS(null,"style",t.options.shaded.style)),1==t.options.drawPoints.enabled){var u={style:t.options.drawPoints.style,styles:t.options.drawPoints.styles,size:t.options.drawPoints.size,height:t.options.drawPoints.height,width:t.options.drawPoints.width,className:t.className};n.drawPoint(e+.5*o,i,u,r.svgElements,r.svg)}},o.drawShading=function(t,e,i,o){if(1==e.options.shaded.enabled){var s=Number(o.svg.style.height.replace("px","")),r=n.getSVGElement("path",o.svgElements,o.svg),a="L";1==e.options.interpolation.enabled&&(a="C");var h,d=0;d="top"==e.options.shaded.orientation?0:"bottom"==e.options.shaded.orientation?s:Math.min(Math.max(0,e.zeroPosition),s),isNaN(t[0][0])||isNaN(t[0][1])||"group"!=e.options.shaded.orientation||null==i||void 0==i?isNaN(t[0][0])||isNaN(t[0][1])||(h="M"+t[0][0]+","+t[0][1]+" "+this.serializePath(t,a,!1)+" V"+d+" H"+t[0][0]+" Z"):h="M"+t[0][0]+","+t[0][1]+" "+this.serializePath(t,a,!1)+" L"+i[i.length-1][0]+","+i[i.length-1][1]+" "+this.serializePath(i,a,!0)+i[0][0]+","+i[0][1]+" Z",r.setAttributeNS(null,"class",e.className+" vis-fill"),void 0!==e.options.shaded.style&&r.setAttributeNS(null,"style",e.options.shaded.style),h&&r.setAttributeNS(null,"d",h)}},o.draw=function(t,e,i){if(null!=t&&void 0!=t){var o=n.getSVGElement("path",i.svgElements,i.svg);o.setAttributeNS(null,"class",e.className),void 0!==e.style&&o.setAttributeNS(null,"style",e.style);var s="L";1==e.options.interpolation.enabled&&(s="C");var r=t[0][0],a=t[0][1];"number"!=typeof r||isNaN(r)||"number"!=typeof a||isNaN(a)||o.setAttributeNS(null,"d","M"+r+","+a+" "+this.serializePath(t,s,!1)),o.setAttributeNS(null,"row-id",e.group.value)}return o},o.serializePath=function(t,e,i){if(t.length<2)return"";var o=e;if(i)for(var n=t.length-2;n>0;n--)isNaN(t[n][0])||isNaN(t[n][1])||(o+=t[n][0]+","+t[n][1]+" ");else for(var n=1;n0&&(f=1/f),m=3*v*(v+y),m>0&&(m=1/m),a={screen_x:(-b*o.screen_x+c*n.screen_x+_*s.screen_x)*f,screen_y:(-b*o.screen_y+c*n.screen_y+_*s.screen_y)*f},h={screen_x:(g*n.screen_x+p*s.screen_x-b*r.screen_x)*m,screen_y:(g*n.screen_y+p*s.screen_y-b*r.screen_y)*m},0==a.screen_x&&0==a.screen_y&&(a=n),0==h.screen_x&&0==h.screen_y&&(h=s),x.push([a.screen_x,a.screen_y]),x.push([h.screen_x,h.screen_y]),x.push([s.screen_x,s.screen_y]);return x},o._linear=function(t){for(var e=[],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 tl;)c=Math.floor((c-1)/2),u+=u;if(void 0!==r&&void 0!==s)if(r!==s)this._redrawLabel(0,s,i,o,this.props.minorCharHeight),this._redrawLabel(p,r,i,o,this.props.minorCharHeight);else if(void 0!==h){var m=.5*e;this._redrawLabel(m,h||a,i,o,this.props.minorCharHeight)}if(c&&l>0)for(var v=Math.abs(s-r),y=u/v*(d-c*this.props.minorCharHeight),g=0;g0;g++)f+=u,p=p-y-this.props.minorCharHeight,this._redrawLabel(p,f,i,o,this.props.minorCharHeight)}},{key:"_getGroupScaleValues",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],o=void 0,n=void 0;if(t.itemsData&&t.itemsData.length>0)if(e)o=Math.max.apply(Math,t.itemsData.map(function(t){return t.referenceLine?t.y:t.maxValue})),n=Math.min.apply(Math,t.itemsData.map(function(t){return t.referenceLine?t.y:t.minValue}));else{var s=t.itemsData.map(function(t){return t.y});o=Math.max.apply(Math,i(s)),n=Math.min.apply(Math,i(s))}t&&t.group&&(Number.isInteger(t.group.maxValue)&&(o=t.group.maxValue),Number.isInteger(t.group.minValue)&&(n=t.group.minValue));var r=t.itemsData[0]&&t.itemsData[0].avgValue;return{maxValue:o,minValue:n,avgValue:_.isNumber(r)||_.isString(r)?r:"",referenceLine:t.itemsData.map(function(t){return t.referenceLine&&t.y})[0]}}},{key:"_renderCustomLabel",value:function(t){for(var e=this,i=t.lineHeight,o=t.orientation,n=t.labelClass,s=t.group,r=s.group.axisCustomLabel.length,a=r,h=i-this.props.minorCharHeight,d=Math.floor(h/this.props.minorCharHeight);a>d;)a=Math.floor((a-2)/2);var l=Math.floor(h/(a-1)),u=s.group.axisCustomLabel[0],c=s.group.axisCustomLabel[r-1],p=c.alternativeLabel?c.alternativeLabel:c.y,f=u.alternativeLabel?u.alternativeLabel:u.y;this._redrawLabel(h,p,o,n,this.props.minorCharHeight),this._redrawLabel(0,f,o,n,this.props.minorCharHeight),s.group.axisCustomLabel.slice().reverse().filter(function(t,e){return e>0&&e3&&void 0!==arguments[3]?arguments[3]:0,n="vis-grid vis-horizontal vis-timeline-chart-horizontal-line";switch(e.summary&&o>0&&(t=o),this._redrawLine(t,"left",n,this.props.width,this.props.majorLineWidth+this.props.width),e.group.type){case"arrow-avg":this._renderArrowAvgLine(t,i,n,e);break;default:this._renderDefaultLine(t,i,n,e)}}},{key:"_renderArrowAvgLine",value:function(t,e,i,o){if(o.itemsData&&o.itemsData.length>0){var n="vis-timeline-chart-guideline vis-timeline-chart-avg-type",s=i+" "+n+" vis-timeline-chart-max-value",r=i+" "+n+" vis-timeline-chart-average",a=i+" "+n+" vis-timeline-chart-min-value",h=this._getSupportLines(t,e),d=h.topLineY,l=h.middleLineY,u=h.bottomLineY;this._redrawLine(t-d,"left",s,0,this.props.majorLineWidth),this._redrawLine(t-l,"left",r,0,this.props.majorLineWidth),this._redrawLine(t-u,"left",a,0,this.props.majorLineWidth)}}},{key:"_renderDefaultLine",value:function(t,e,o,n){o+=" vis-timeline-chart-guideline vis-timeline-chart-default-type";var s=n.itemsData.map(function(t){return t.y}),r=n.itemsData[0]&&n.itemsData[0].avgValue?n.itemsData[0].avgValue:void 0;if(s.length>0){var a=this._getSupportLines(t,e),h=a.topLineY,d=a.middleLineY,l=a.bottomLineY;Math.max.apply(Math,i(s))===Math.min.apply(Math,i(s))||r?this._redrawLine(t-d,"left",o,0,this.props.majorLineWidth):(this._redrawLine(t-h,"left",o,0,this.props.majorLineWidth),this._redrawLine(t-l,"left",o,0,this.props.majorLineWidth))}}},{key:"_getSupportLines",value:function(t,e){var i=t-e;return{topLineY:i,middleLineY:i/2+this.props.minorCharHeight/2,bottomLineY:this.props.minorCharHeight}}}]),t}();t.exports=s},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}var n=function(){function t(t,e){for(var i=0;ie&&ts?s:t,e=null==e?s:e0){var d=function(){var a={};for(t._getRelevantData(h,a,s,r),t._applySampling(h,a),i=0;ie?t:e})},x={};for(i=0;i0)for(var M=w(k.map(function(t){return t.index})),S=1;S<=M;S++)!function(o){var n=k.filter(function(t){return t.index==o});n.length>0&&(delete x[h[i]],x.hasOwnProperty(h[i])||(x[h[i]]=c.calcPath(n,e)),c.drawShading(x[h[i]],e,void 0,t.framework))}(S);else c.drawShading(x[h[i]],e,void 0,t.framework)}u.draw(h,a,t.framework);var D=function(e,i,o,n){t.body.emitter.emit(e,{data:n,event:i,element:o})},E=function(i,o){x.hasOwnProperty(o)||(x[o]=c.calcPath(i,e));var n=i[0];n&&n.styleLine&&(e.style=n.styleLine);var s=c.draw(x[o],e,t.framework);"line"!==e.group.type&&"trend"!==e.group.type||(l.attachEvents(s,"mouseenter",a[o],function(t,e,i){return D("itemmouseenter",t,e,i)}),l.attachEvents(s,"mouseout",a[o],function(t,e,i){return D("itemmouseout",t,e,i)}),l.attachEvents(s,"click",a[o],function(t,e,i){return D("itemclick",t,e,i)})),"infusionrate"===e.group.type&&(l.attachEvents(s,"mouseenter",i,function(t,e,i){return D("itemmouseenter",t,e,i)}),l.attachEvents(s,"mouseout",i,function(t,e,i){return D("itemmouseout",t,e,i)}),l.attachEvents(s,"click",i,function(t,e,i){return D("itemclick",t,e,i)}))};for(i=0;i0)switch(e.options.style){case"line":case"trend":if(a[h[i]].filter(function(t){return void 0!==t.index&&0!==t.index}).length>0)for(var C=w(a[h[i]].map(function(t){return t.index})),S=1;S<=C;S++)!function(t){var e=a[h[i]].filter(function(e){return e.index==t});e.length>0&&(delete x[h[i]],E(e,h[i]))}(S);else E(a[h[i]],h[i]);case"point":case"points":if("point"==e.options.style||"points"==e.options.style||1==e.options.drawPoints.enabled){var T=p.draw(a[h[i]],e,t.framework);e.withTrend&&function(){var o=[],n=[],s=[];if(T.forEach(function(t){var e=t[0],i=t[2],r=t[1];e&&e.points&&e.points.length>3&&o.push({screen_x:e.points[3].x,screen_y:e.points[0].y}),i&&i.points&&i.points.length>3&&n.push({screen_x:i.points[3].x,screen_y:i.points[0].y}),r&&s.push({screen_x:r.normalizedPathSegList._list[0].x,screen_y:r.normalizedPathSegList._list[0].y+2})}),o&&n&&s){var r=a[h[i]].find(function(t){return 0==t.referenceLine});r&&r.styleLine&&(e.style=r.styleLine);var d=c.calcPath(o,e);c.draw(d,e,t.framework);var l=c.calcPath(n,e);c.draw(l,e,t.framework);var u=c.calcPath(s,e);c.draw(u,e,t.framework)}}(),l.attachEvents(T,"mouseenter",a[h[i]].filter(function(t){return!t.referenceLine}),function(t,e,i){return D("itemmouseenter",t,e,i)}),l.attachEvents(T,"mouseout",a[h[i]].filter(function(t){return!t.referenceLine}),function(t,e,i){return D("itemmouseout",t,e,i)}),l.attachEvents(T,"click",a[h[i]].filter(function(t){return!t.referenceLine}),function(t,e,i){return D("itemclick",t,e,i)})}}"infusionrate"!=e.group.type&&"bolus"!=e.group.type||f.drawBolus(a[h[i]],t.framework,t.body)}}();if("object"===(void 0===d?"undefined":a(d)))return d.v}}return l.cleanupElements(this.svgElements),!1}},{key:"setOptions",value:function(t){var e=this;if(t){var i=["events","height","graphHeight","style","dataAxis","groups"];void 0===t.graphHeight&&void 0!==t.height?(this.updateSVGheight=!0,this.updateSVGheightOnResize=!0):void 0!==this.body.domProps.centerContainer.height&&void 0!==t.graphHeight&&parseInt((t.graphHeight+"").replace("px",""))=2&&e.add(t[0].y)}),Array.from(e)},n.createSubGroups=function(t){var e={};return t.forEach(function(t){e.hasOwnProperty(t.index)?e[t.index].push(t):(e[t.index]=[],e[t.index].push(t))}),e},t.exports=n},function(t,e){Object.defineProperty(e,"__esModule",{value:!0});var i="string",o="boolean",n="number",s="object",r={configure:{enabled:{boolean:o},filter:{boolean:o,function:"function"},container:{dom:"dom"},__type__:{object:s,boolean:o,function:"function"}},yAxisOrientation:{string:["left","right"]},defaultGroup:{string:i},sort:{boolean:o},sampling:{boolean:o},stack:{boolean:o},graphHeight:{string:i,number:n},shaded:{enabled:{boolean:o},orientation:{string:["bottom","top","zero","group"]},groupId:{object:s},__type__:{boolean:o,object:s}},style:{string:["line","bar","points"]},barChart:{width:{number:n},minWidth:{number:n},sideBySide:{boolean:o},align:{string:["left","center","right"]},__type__:{object:s}},interpolation:{enabled:{boolean:o},parametrization:{string:["centripetal","chordal","uniform"]},alpha:{number:n},__type__:{object:s,boolean:o}},drawPoints:{enabled:{boolean:o},onRender:{function:"function"},size:{number:n},style:{string:["square","circle","trend","triangle-up","triangle-down","arrow-avg","partogram"]},__type__:{object:s,boolean:o,function:"function"}},dataAxis:{extraLineWidth:{number:n},labelOffsetY:{number:n},linesOffsetY:{number:n},linesOffsetX:{number:n},minorLinesOffset:{number:n},majorLinesOffset:{number:n},showMinorLabels:{boolean:o},showMajorLabels:{boolean:o},showMinorLines:{boolean:o},icons:{boolean:o},width:{string:i,number:n},visible:{boolean:o},alignZeros:{boolean:o},fontSize:{number:n},fontFamily:{string:i},data:{values:{array:"array"},labels:{array:"array"},__type__:{object:s}},left:{range:{min:{number:n},max:{number:n},__type__:{object:s}},format:{function:"function"},title:{text:{string:i,number:n},style:{string:i},__type__:{object:s}},__type__:{object:s}},right:{range:{min:{number:n},max:{number:n},__type__:{object:s}},format:{function:"function"},title:{text:{string:i,number:n},style:{string:i},__type__:{object:s}},__type__:{object:s}},__type__:{object:s}},legend:{enabled:{boolean:o},icons:{boolean:o},left:{visible:{boolean:o},position:{string:["top-right","bottom-right","top-left","bottom-left"]},__type__:{object:s}},right:{visible:{boolean:o},position:{string:["top-right","bottom-right","top-left","bottom-left"]},__type__:{object:s}},__type__:{object:s,boolean:o}},groups:{visibility:{any:"any"},__type__:{object:s}},autoResize:{boolean:o},throttleRedraw:{number:n},clickToUse:{boolean:o},end:{number:n,date:"date",string:i,moment:"moment"},format:{minorLabels:{millisecond:{string:i,undefined:"undefined"},second:{string:i,undefined:"undefined"},minute:{string:i,undefined:"undefined"},hour:{string:i,undefined:"undefined"},weekday:{string:i,undefined:"undefined"},day:{string:i,undefined:"undefined"},month:{string:i,undefined:"undefined"},year:{string:i,undefined:"undefined"},__type__:{object:s}},majorLabels:{millisecond:{string:i,undefined:"undefined"},second:{string:i,undefined:"undefined"},minute:{string:i,undefined:"undefined"},hour:{string:i,undefined:"undefined"},weekday:{string:i,undefined:"undefined"},day:{string:i,undefined:"undefined"},month:{string:i,undefined:"undefined"},year:{string:i,undefined:"undefined"},__type__:{object:s}},__type__:{object:s}},moment:{function:"function"},height:{string:i,number:n},hiddenDates:{start:{date:"date",number:n,string:i,moment:"moment"},end:{date:"date",number:n,string:i,moment:"moment"},repeat:{string:i},__type__:{object:s,array:"array"}},locale:{string:i},locales:{__any__:{any:"any"},__type__:{object:s}},max:{date:"date",number:n,string:i,moment:"moment"},maxHeight:{number:n,string:i},maxMinorChars:{number:n},gap:{number:n},itemsFit:{array:"array"},min:{date:"date",number:n,string:i,moment:"moment"},minHeight:{number:n,string:i},moveable:{boolean:o},multiselect:{boolean:o},orientation:{string:i},showCurrentTime:{boolean:o},showMajorLabels:{boolean:o},showMinorLabels:{boolean:o},showMinorLines:{boolean:o},start:{date:"date",number:n,string:i,moment:"moment"},timeAxis:{scale:{string:i,undefined:"undefined"},step:{number:n,undefined:"undefined"},__type__:{object:s}},width:{string:i,number:n},zoomable:{boolean:o},zoomKey:{string:["ctrlKey","altKey","metaKey",""]},zoomMax:{number:n},zoomMin:{number:n},zIndex:{number:n},__type__:{object:s}},a={global:{sort:!0,sampling:!0,stack:!1,shaded:{enabled:!1,orientation:["zero","top","bottom","group"]},style:["line","bar","points"],barChart:{width:[50,5,100,5],minWidth:[50,5,100,5],sideBySide:!1,align:["left","center","right"]},interpolation:{enabled:!0,parametrization:["centripetal","chordal","uniform"]},drawPoints:{enabled:!0,size:[6,2,30,1],style:["square","circle","arrow-avg","partogram"]},dataAxis:{minorLinesOffset:0,showMinorLabels:!0,showMinorLines:!0,showMajorLabels:!0,icons:!1,width:[40,0,200,1],visible:!0,alignZeros:!0,left:{title:{text:"",style:""}},right:{title:{text:"",style:""}}},legend:{enabled:!1,icons:!0,left:{visible:!0,position:["top-right","bottom-right","top-left","bottom-left"]},right:{visible:!0,position:["top-right","bottom-right","top-left","bottom-left"]}},autoResize:!0,throttleRedraw:[10,0,1e3,10],clickToUse:!1,end:"",format:{minorLabels:{millisecond:"SSS",second:"s",minute:"HH:mm",hour:"HH:mm",weekday:"ddd D",day:"D",month:"MMM",year:"YYYY"},majorLabels:{millisecond:"HH:mm:ss",second:"D MMMM HH:mm",minute:"ddd D MMMM",hour:"ddd D MMMM",weekday:"MMMM YYYY",day:"MMMM YYYY",month:"YYYY",year:""}},height:"",locale:"",max:"",maxHeight:"",maxMinorChars:[7,0,20,1],min:"",minHeight:"",moveable:!0,orientation:["both","bottom","top"],showCurrentTime:!1,showMajorLabels:!0,showMinorLabels:!0,showMinorLines:!0,start:"",width:"100%",zoomable:!0,zoomKey:["ctrlKey","altKey","metaKey",""],zoomMax:[31536e10,10,31536e10,1],zoomMin:[10,10,31536e10,1],zIndex:0}};e.allOptions=r,e.configureOptions=a},function(t,e,i){function o(t){return t&&t.__esModule?t:{default:t}}function n(t,e,i){var o=this;if(!(this instanceof n))throw new SyntaxError("Constructor must be called with the new operator");this.options={},this.defaultOptions={locale:"en",locales:W,clickToUse:!1},F.extend(this.options,this.defaultOptions),this.body={container:t,nodes:{},nodeIndices:[],edges:{},edgeIndices:[],emitter:{on:this.on.bind(this),off:this.off.bind(this),emit:this.emit.bind(this),once:this.once.bind(this)},eventListeners:{onTap:function(){},onTouch:function(){},onDoubleTap:function(){},onHold:function(){},onDragStart:function(){},onDrag:function(){},onDragEnd:function(){},onMouseWheel:function(){},onPinch:function(){},onMouseMove:function(){},onRelease:function(){},onContext:function(){}},data:{nodes:null,edges:null},functions:{createNode:function(){},createEdge:function(){},getPointer:function(){}},modules:{},view:{scale:1,translation:{x:0,y:0}}},this.bindEventListeners(),this.images=new r.default(function(){return o.body.emitter.emit("_requestRedraw")}),this.groups=new h.default,this.canvas=new _.default(this.body),this.selectionHandler=new S.default(this.body,this.canvas),this.interactionHandler=new O.default(this.body,this.canvas,this.selectionHandler),this.view=new x.default(this.body,this.canvas),this.renderer=new g.default(this.body,this.canvas),this.physics=new f.default(this.body),this.layoutEngine=new E.default(this.body),this.clustering=new v.default(this.body),this.manipulation=new T.default(this.body,this.canvas,this.selectionHandler),this.nodesHandler=new l.default(this.body,this.images,this.groups,this.layoutEngine),this.edgesHandler=new c.default(this.body,this.images,this.groups),this.body.modules.kamadaKawai=new z.default(this.body,150,.05),this.body.modules.clustering=this.clustering,this.canvas._create(),this.setOptions(i),this.setData(e)}var s=i(68),r=o(s),a=i(70),h=o(a),d=i(71),l=o(d),u=i(91),c=o(u),p=i(100),f=o(p),m=i(112),v=o(m),y=i(115),g=o(y),b=i(116),_=o(b),w=i(117),x=o(w),k=i(118),O=o(k),M=i(121),S=o(M),D=i(122),E=o(D),C=i(123),T=o(C),P=i(21),N=o(P),I=i(27),L=o(I),A=i(124),R=i(125),z=o(R);i(127);var j=i(13),F=i(1),B=(i(9),i(11),i(128)),H=i(129),Y=i(34),W=i(130);j(n.prototype),n.prototype.setOptions=function(t){var e=this;if(void 0!==t){!0===L.default.validate(t,A.allOptions)&&console.log("%cErrors have been found in the supplied options object.",I.printStyle);var i=["locale","locales","clickToUse"];if(F.selectiveDeepExtend(i,this.options,t),t=this.layoutEngine.setOptions(t.layout,t),this.canvas.setOptions(t),this.groups.setOptions(t.groups),this.nodesHandler.setOptions(t.nodes),this.edgesHandler.setOptions(t.edges),this.physics.setOptions(t.physics),this.manipulation.setOptions(t.manipulation,t,this.options),this.interactionHandler.setOptions(t.interaction),this.renderer.setOptions(t.interaction),this.selectionHandler.setOptions(t.interaction),void 0!==t.groups&&this.body.emitter.emit("refreshNodes"),"configure"in t&&(this.configurator||(this.configurator=new N.default(this,this.body.container,A.configureOptions,this.canvas.pixelRatio)),this.configurator.setOptions(t.configure)),this.configurator&&!0===this.configurator.options.enabled){var o={nodes:{},edges:{},layout:{},interaction:{},manipulation:{},physics:{},global:{}};F.deepExtend(o.nodes,this.nodesHandler.options),F.deepExtend(o.edges,this.edgesHandler.options),F.deepExtend(o.layout,this.layoutEngine.options),F.deepExtend(o.interaction,this.selectionHandler.options),F.deepExtend(o.interaction,this.renderer.options),F.deepExtend(o.interaction,this.interactionHandler.options),F.deepExtend(o.manipulation,this.manipulation.options),F.deepExtend(o.physics,this.physics.options),F.deepExtend(o.global,this.canvas.options),F.deepExtend(o.global,this.options),this.configurator.setModuleOptions(o)}void 0!==t.clickToUse?!0===t.clickToUse?void 0===this.activator&&(this.activator=new Y(this.canvas.frame),this.activator.on("change",function(){e.body.emitter.emit("activate")})):(void 0!==this.activator&&(this.activator.destroy(),delete this.activator),this.body.emitter.emit("activate")):this.body.emitter.emit("activate"),this.canvas.setSize(),this.body.emitter.emit("startSimulation")}},n.prototype._updateVisibleIndices=function(){var t=this.body.nodes,e=this.body.edges;this.body.nodeIndices=[],this.body.edgeIndices=[];for(var i in t)t.hasOwnProperty(i)&&!1===t[i].options.hidden&&this.body.nodeIndices.push(t[i].id);for(var o in e)e.hasOwnProperty(o)&&!1===e[o].options.hidden&&this.body.edgeIndices.push(e[o].id)},n.prototype.bindEventListeners=function(){var t=this;this.body.emitter.on("_dataChanged",function(){t._updateVisibleIndices(),t.physics.initPhysicsData(),t.body.emitter.emit("_requestRedraw"),t.body.emitter.emit("_dataUpdated")}),this.body.emitter.on("_dataUpdated",function(){t._updateValueRange(t.body.nodes),t._updateValueRange(t.body.edges),t.body.emitter.emit("startSimulation"),t.body.emitter.emit("_requestRedraw")})},n.prototype.setData=function(t){if(this.body.emitter.emit("resetPhysics"),this.body.emitter.emit("_resetData"),this.selectionHandler.unselectAll(),t&&t.dot&&(t.nodes||t.edges))throw new SyntaxError('Data must contain either parameter "dot" or parameter pair "nodes" and "edges", but not both.');if(this.setOptions(t&&t.options),t&&t.dot){console.log("The dot property has been depricated. Please use the static convertDot method to convert DOT into vis.network format and use the normal data format with nodes and edges. This converter is used like this: var data = vis.network.convertDot(dotString);");var e=B.DOTToGraph(t.dot);return void this.setData(e)}if(t&&t.gephi){console.log("The gephi property has been depricated. Please use the static convertGephi method to convert gephi into vis.network format and use the normal data format with nodes and edges. This converter is used like this: var data = vis.network.convertGephi(gephiJson);") +;var i=H.parseGephi(t.gephi);return void this.setData(i)}this.nodesHandler.setData(t&&t.nodes,!0),this.edgesHandler.setData(t&&t.edges,!0),this.body.emitter.emit("_dataChanged"),this.body.emitter.emit("_dataLoaded"),this.body.emitter.emit("initPhysics")},n.prototype.destroy=function(){this.body.emitter.emit("destroy"),this.body.emitter.off(),this.off(),delete this.groups,delete this.canvas,delete this.selectionHandler,delete this.interactionHandler,delete this.view,delete this.renderer,delete this.physics,delete this.layoutEngine,delete this.clustering,delete this.manipulation,delete this.nodesHandler,delete this.edgesHandler,delete this.configurator,delete this.images;for(var t in this.body.nodes)delete this.body.nodes[t];for(var e in this.body.edges)delete this.body.edges[e];F.recursiveDOMDelete(this.body.container)},n.prototype._updateValueRange=function(t){var e,i=void 0,o=void 0,n=0;for(e in t)if(t.hasOwnProperty(e)){var s=t[e].getValue();void 0!==s&&(i=void 0===i?s:Math.min(s,i),o=void 0===o?s:Math.max(s,o),n+=s)}if(void 0!==i&&void 0!==o)for(e in t)t.hasOwnProperty(e)&&t[e].setValueRange(i,o,n)},n.prototype.isActive=function(){return!this.activator||this.activator.active},n.prototype.setSize=function(){return this.canvas.setSize.apply(this.canvas,arguments)},n.prototype.canvasToDOM=function(){return this.canvas.canvasToDOM.apply(this.canvas,arguments)},n.prototype.DOMtoCanvas=function(){return this.canvas.DOMtoCanvas.apply(this.canvas,arguments)},n.prototype.findNode=function(){return this.clustering.findNode.apply(this.clustering,arguments)},n.prototype.isCluster=function(){return this.clustering.isCluster.apply(this.clustering,arguments)},n.prototype.openCluster=function(){return this.clustering.openCluster.apply(this.clustering,arguments)},n.prototype.cluster=function(){return this.clustering.cluster.apply(this.clustering,arguments)},n.prototype.getNodesInCluster=function(){return this.clustering.getNodesInCluster.apply(this.clustering,arguments)},n.prototype.clusterByConnection=function(){return this.clustering.clusterByConnection.apply(this.clustering,arguments)},n.prototype.clusterByHubsize=function(){return this.clustering.clusterByHubsize.apply(this.clustering,arguments)},n.prototype.clusterOutliers=function(){return this.clustering.clusterOutliers.apply(this.clustering,arguments)},n.prototype.getSeed=function(){return this.layoutEngine.getSeed.apply(this.layoutEngine,arguments)},n.prototype.enableEditMode=function(){return this.manipulation.enableEditMode.apply(this.manipulation,arguments)},n.prototype.disableEditMode=function(){return this.manipulation.disableEditMode.apply(this.manipulation,arguments)},n.prototype.addNodeMode=function(){return this.manipulation.addNodeMode.apply(this.manipulation,arguments)},n.prototype.editNode=function(){return this.manipulation.editNode.apply(this.manipulation,arguments)},n.prototype.editNodeMode=function(){return console.log("Deprecated: Please use editNode instead of editNodeMode."),this.manipulation.editNode.apply(this.manipulation,arguments)},n.prototype.addEdgeMode=function(){return this.manipulation.addEdgeMode.apply(this.manipulation,arguments)},n.prototype.editEdgeMode=function(){return this.manipulation.editEdgeMode.apply(this.manipulation,arguments)},n.prototype.deleteSelected=function(){return this.manipulation.deleteSelected.apply(this.manipulation,arguments)},n.prototype.getPositions=function(){return this.nodesHandler.getPositions.apply(this.nodesHandler,arguments)},n.prototype.storePositions=function(){return this.nodesHandler.storePositions.apply(this.nodesHandler,arguments)},n.prototype.moveNode=function(){return this.nodesHandler.moveNode.apply(this.nodesHandler,arguments)},n.prototype.getBoundingBox=function(){return this.nodesHandler.getBoundingBox.apply(this.nodesHandler,arguments)},n.prototype.getConnectedNodes=function(t){return void 0!==this.body.nodes[t]?this.nodesHandler.getConnectedNodes.apply(this.nodesHandler,arguments):this.edgesHandler.getConnectedNodes.apply(this.edgesHandler,arguments)},n.prototype.getConnectedEdges=function(){return this.nodesHandler.getConnectedEdges.apply(this.nodesHandler,arguments)},n.prototype.startSimulation=function(){return this.physics.startSimulation.apply(this.physics,arguments)},n.prototype.stopSimulation=function(){return this.physics.stopSimulation.apply(this.physics,arguments)},n.prototype.stabilize=function(){return this.physics.stabilize.apply(this.physics,arguments)},n.prototype.getSelection=function(){return this.selectionHandler.getSelection.apply(this.selectionHandler,arguments)},n.prototype.setSelection=function(){return this.selectionHandler.setSelection.apply(this.selectionHandler,arguments)},n.prototype.getSelectedNodes=function(){return this.selectionHandler.getSelectedNodes.apply(this.selectionHandler,arguments)},n.prototype.getSelectedEdges=function(){return this.selectionHandler.getSelectedEdges.apply(this.selectionHandler,arguments)},n.prototype.getNodeAt=function(){var t=this.selectionHandler.getNodeAt.apply(this.selectionHandler,arguments);return void 0!==t&&void 0!==t.id?t.id:t},n.prototype.getEdgeAt=function(){var t=this.selectionHandler.getEdgeAt.apply(this.selectionHandler,arguments);return void 0!==t&&void 0!==t.id?t.id:t},n.prototype.selectNodes=function(){return this.selectionHandler.selectNodes.apply(this.selectionHandler,arguments)},n.prototype.selectEdges=function(){return this.selectionHandler.selectEdges.apply(this.selectionHandler,arguments)},n.prototype.unselectAll=function(){this.selectionHandler.unselectAll.apply(this.selectionHandler,arguments),this.redraw()},n.prototype.redraw=function(){return this.renderer.redraw.apply(this.renderer,arguments)},n.prototype.getScale=function(){return this.view.getScale.apply(this.view,arguments)},n.prototype.getViewPosition=function(){return this.view.getViewPosition.apply(this.view,arguments)},n.prototype.fit=function(){return this.view.fit.apply(this.view,arguments)},n.prototype.moveTo=function(){return this.view.moveTo.apply(this.view,arguments)},n.prototype.focus=function(){return this.view.focus.apply(this.view,arguments)},n.prototype.releaseNode=function(){return this.view.releaseNode.apply(this.view,arguments)},n.prototype.getOptionsFromConfigurator=function(){var t={};return this.configurator&&(t=this.configurator.getOptions.apply(this.configurator)),t},t.exports=n},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;i2&&this.initialized()){e*=.5;for(var r=0;e>2&&r=this.NUM_ITERATIONS&&(r=this.NUM_ITERATIONS-1);var a=this.coordinates[r];t.drawImage(this.canvas,a[0],a[1],a[2],a[3],i,o,n,s)}else this._isImageOk()&&t.drawImage(this.image,i,o,n,s)}},{key:"_isImageOk",value:function(t){var t=this.image;return!!t.complete&&(void 0===t.naturalWidth||0!==t.naturalWidth)}}]),t}();e.default=n},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;i0){var i=this.groupIndex%this.groupsArray.length;this.groupIndex++,e={},e.color=this.groups[this.groupsArray[i]],this.groups[t]=e}else{var o=this.defaultIndex%this.defaultGroups.length;this.defaultIndex++,e={},e.color=this.defaultGroups[o],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},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;i1&&void 0!==arguments[1]&&arguments[1],i=this.body.data.nodes;if(t instanceof u||t instanceof c)this.body.data.nodes=t;else if(Array.isArray(t))this.body.data.nodes=new u,this.body.data.nodes.add(t);else{if(t)throw new TypeError("Array or DataSet expected");this.body.data.nodes=new u}if(i&&l.forEach(this.nodesListeners,function(t,e){i.off(e,t)}),this.body.nodes={},this.body.data.nodes){var o=this;l.forEach(this.nodesListeners,function(t,e){o.body.data.nodes.on(e,t)});var n=this.body.data.nodes.getIds();this.add(n,!0)}!1===e&&this.body.emitter.emit("_dataChanged")}},{key:"add",value:function(t){for(var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=void 0,o=[],n=0;n1&&void 0!==arguments[1]?arguments[1]:a.default)(t,this.body,this.images,this.groups,this.options)}},{key:"refresh",value:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],e=this.body.nodes;for(var i in e){var o=void 0;e.hasOwnProperty(i)&&(o=e[i]);var n=this.body.data.nodes._data[i];void 0!==o&&void 0!==n&&(!0===t&&o.setOptions({x:null,y:null}),o.setOptions({fixed:!1}),o.setOptions(n))}}},{key:"getPositions",value:function(t){var e={};if(void 0!==t){if(!0===Array.isArray(t)){for(var i=0;i0&&this.body.emitter.emit("_physicsUpdate",{type:"node",id:this.id,options:i})}},{key:"setY",value:function(t){this._y=t}},{key:"attachEdge",value:function(t){-1===this.edges.indexOf(t)&&this.edges.push(t)}},{key:"detachEdge",value:function(t){var e=this.edges.indexOf(t);-1!=e&&this.edges.splice(e,1)}},{key:"setOptions",value:function(e){var i=this.options.shape;if(e){if(void 0!==e.id&&(this.id=e.id),void 0===this.id)throw"Node must have an id";if(void 0!==e.x&&(null===e.x?(this.x=void 0,this.predefinedPosition=!1):(this.x=parseInt(e.x),this.predefinedPosition=!0)),void 0!==e.y&&(null===e.y?(this.y=void 0,this.predefinedPosition=!1):(this.y=parseInt(e.y),this.predefinedPosition=!0)),void 0!==e.size&&(this.baseSize=e.size),void 0!==e.value&&(e.value=parseFloat(e.value)),"number"==typeof e.group||"string"==typeof e.group&&""!=e.group){var o=this.grouplist.get(e.group);z.deepExtend(this.options,o),this.options.color=z.parseColor(this.options.color)}var n=t.parseOptions(this.options,e,!0,this.globalOptions);if(void 0!==this.options.image){if(!this.imagelist)throw"No imagelist provided";this.imageObj=this.imagelist.load(this.options.image,this.options.brokenImage,this.id)}return this.updateLabelModule(),this.updateShape(i),void 0!==e.mass&&(this.options.mass=e.mass,n.mass=e.mass),void 0!==e.physics&&(this.options.physics=e.physics,n.physics=e.physics),this.sendPhysicsUpdates&&Object.keys(n).length>0&&this.body.emitter.emit("_physicsUpdate",{type:"node",id:this.id,options:n}),void 0!==e.hidden}}},{key:"updateLabelModule",value:function(){void 0!==this.options.label&&null!==this.options.label||(this.options.label=""),this.labelModule.setOptions(this.options,!0),void 0!==this.labelModule.baseSize&&(this.baseFontSize=this.labelModule.baseSize)}},{key:"updateShape",value:function(t){if(t===this.options.shape&&this.shape)this.shape.setOptions(this.options,this.imageObj);else switch(this.options.shape){case"box":this.shape=new d.default(this.options,this.body,this.labelModule);break;case"circle":this.shape=new u.default(this.options,this.body,this.labelModule);break;case"circularImage":this.shape=new p.default(this.options,this.body,this.labelModule,this.imageObj);break;case"database":this.shape=new m.default(this.options,this.body,this.labelModule);break;case"diamond":this.shape=new y.default(this.options,this.body,this.labelModule);break;case"dot":this.shape=new b.default(this.options,this.body,this.labelModule);break;case"ellipse":this.shape=new w.default(this.options,this.body,this.labelModule);break;case"icon":this.shape=new k.default(this.options,this.body,this.labelModule);break;case"image":this.shape=new M.default(this.options,this.body,this.labelModule,this.imageObj);break;case"square":this.shape=new D.default(this.options,this.body,this.labelModule);break;case"star":this.shape=new C.default(this.options,this.body,this.labelModule);break;case"text":this.shape=new P.default(this.options,this.body,this.labelModule);break;case"triangle":this.shape=new I.default(this.options,this.body,this.labelModule);break;case"triangleDown":this.shape=new A.default(this.options,this.body,this.labelModule);break;default:this.shape=new w.default(this.options,this.body,this.labelModule)}this._reset()}},{key:"select",value:function(){this.selected=!0,this._reset()}},{key:"unselect",value:function(){this.selected=!1,this._reset()}},{key:"_reset",value:function(){this.shape.width=void 0,this.shape.height=void 0}},{key:"getTitle",value:function(){return this.options.title}},{key:"distanceToBorder",value:function(t,e){return this.shape.distanceToBorder(t,e)}},{key:"isFixed",value:function(){return this.options.fixed.x&&this.options.fixed.y}},{key:"isSelected",value:function(){return this.selected}},{key:"getValue",value:function(){return this.options.value}},{key:"setValueRange",value:function(t,e,i){if(void 0!==this.options.value){var o=this.options.scaling.customScalingFunction(t,e,i,this.options.value),n=this.options.scaling.max-this.options.scaling.min;if(!0===this.options.scaling.label.enabled){var s=this.options.scaling.label.max-this.options.scaling.label.min;this.options.font.size=this.options.scaling.label.min+o*s}this.options.size=this.options.scaling.min+o*n}else this.options.size=this.baseSize,this.options.font.size=this.baseFontSize;this.updateLabelModule()}},{key:"draw",value:function(t){this.shape.draw(t,this.x,this.y,this.selected,this.hover)}},{key:"updateBoundingBox",value:function(t){this.shape.updateBoundingBox(this.x,this.y,t)}},{key:"resize",value:function(t){this.shape.resize(t,this.selected)}},{key:"isOverlappingWith",value:function(t){return this.shape.leftt.left&&this.shape.topt.top}},{key:"isBoundingBoxOverlappingWith",value:function(t){return this.shape.boundingBox.leftt.left&&this.shape.boundingBox.topt.top}},{key:"x",get:function(){return this._x},set:function(t){this._x=t,this.body.emitter.emit("_positionUpdate",{id:this.id,x:this._x,y:this._y})}},{key:"y",get:function(){return this._y},set:function(t){this._y=t,this.body.emitter.emit("_positionUpdate",{id:this.id,x:this._x,y:this._y})}}],[{key:"parseOptions",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},n=["color","font","fixed","shadow"],s={};if(z.selectiveNotDeepExtend(n,t,e,i),z.mergeOptions(t,e,"shadow",i,o),void 0!==e.color&&null!==e.color){var r=z.parseColor(e.color);z.fillIfDefined(t.color,r)}else!0===i&&null===e.color&&(t.color=z.bridgeObject(o.color));return void 0!==e.fixed&&null!==e.fixed&&("boolean"==typeof e.fixed?t.fixed.x===e.fixed&&t.fixed.y===e.fixed||(t.fixed.x=e.fixed,t.fixed.y=e.fixed,s.fixed={x:e.fixed,y:e.fixed}):(void 0!==e.fixed.x&&"boolean"==typeof e.fixed.x&&t.fixed.x!==e.fixed.x&&(t.fixed.x=e.fixed.x,z.deepExtend(s,{fixed:{x:e.fixed.x}})),void 0!==e.fixed.y&&"boolean"==typeof e.fixed.y&&t.fixed.y!==e.fixed.y&&(t.fixed.y=e.fixed.y,z.deepExtend(s,{fixed:{y:e.fixed.y}})))),void 0!==e.font&&null!==e.font?a.default.parseOptions(t.font,e):!0===i&&null===e.font&&(t.font=z.bridgeObject(o.font)),void 0!==e.scaling&&z.mergeOptions(t.scaling,e.scaling,"label",i,o.scaling),s}}]),t}();e.default=j},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(t){n=!0,s=t}finally{try{!o&&a.return&&a.return()}finally{if(n)throw s}}return i}return function(e,i){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},r=function(){function t(t,e){for(var i=0;i2&&void 0!==arguments[2]&&arguments[2];o(this,t),this.body=e,this.pointToSelf=!1,this.baseSize=void 0,this.fontOptions={},this.setOptions(i),this.size={top:0,left:0,width:0,height:0,yLine:0},this.isEdgeLabel=n}return r(t,[{key:"setOptions",value:function(e){var i=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.nodeOptions=e,this.fontOptions=a.deepExtend({},e.font,!0),void 0!==e.label&&(this.labelDirty=!0),void 0!==e.font&&(t.parseOptions(this.fontOptions,e,i),"string"==typeof e.font?this.baseSize=this.fontOptions.size:"object"===s(e.font)&&void 0!==e.font.size&&(this.baseSize=e.font.size))}},{key:"draw",value:function(t,e,i,o){var n=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"middle";if(void 0!==this.nodeOptions.label){var s=this.fontOptions.size*this.body.view.scale;this.nodeOptions.label&&s4&&void 0!==arguments[4]?arguments[4]:"middle",r=this.fontOptions.size,a=r*this.body.view.scale;a>=this.nodeOptions.scaling.label.maxVisible&&(r=Number(this.nodeOptions.scaling.label.maxVisible)/this.body.view.scale);var h=this.size.yLine,d=this._getColor(a),l=n(d,2),u=l[0],c=l[1],p=this._setAlignment(t,i,h,s),f=n(p,2);i=f[0],h=f[1],t.font=(e&&this.nodeOptions.labelHighlightBold?"bold ":"")+r+"px "+this.fontOptions.face,t.fillStyle=u,this.isEdgeLabel||"left"!==this.fontOptions.align?t.textAlign="center":(t.textAlign=this.fontOptions.align,i-=.5*this.size.width),this.fontOptions.strokeWidth>0&&(t.lineWidth=this.fontOptions.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(this.isEdgeLabel&&"horizontal"!==this.fontOptions.align&&!1===this.pointToSelf){e=0,i=0;"top"===this.fontOptions.align?(t.textBaseline="alphabetic",i-=4):"bottom"===this.fontOptions.align?(t.textBaseline="hanging",i+=4):t.textBaseline="middle"}else t.textBaseline=o;return[e,i]}},{key:"_getColor",value:function(t){var e=this.fontOptions.color||"#000000",i=this.fontOptions.strokeColor||"#ffffff";if(t<=this.nodeOptions.scaling.label.drawThreshold){var o=Math.max(0,Math.min(1,1-(this.nodeOptions.scaling.label.drawThreshold-t)));e=a.overrideOpacity(e,o),i=a.overrideOpacity(i,o)}return[e,i]}},{key:"getTextSize",value:function(t){ +var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return{width:this._processLabel(t,e),height:this.fontOptions.size*this.lineCount,lineCount:this.lineCount}}},{key:"calculateLabelSize",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,n=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"middle";!0===this.labelDirty&&(this.size.width=this._processLabel(t,e)),this.size.height=this.fontOptions.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.fontOptions.size,"hanging"===n&&(this.size.top+=.5*this.fontOptions.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.nodeOptions.label){o=String(this.nodeOptions.label).split("\n"),n=o.length,t.font=(e&&this.nodeOptions.labelHighlightBold?"bold ":"")+this.fontOptions.size+"px "+this.fontOptions.face,i=t.measureText(o[0]).width;for(var s=1;si?r:i}}return this.lines=o,this.lineCount=n,i}}],[{key:"parseOptions",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]&&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"===s(e.font)&&a.fillIfDefined(t,e.font,i);t.size=Number(t.size)}}]),t}();e.default=h},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}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&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0&&(this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t)),t.restore(),this.updateBoundingBox(e,i,t,o),this.labelModule.draw(t,e,i,o)}},{key:"updateBoundingBox",value:function(t,e,i,o){this.resize(i,o),this.left=t-.5*this.width,this.top=e-.5*this.height;var n=this.options.shapeProperties.borderRadius;this.boundingBox.left=this.left-n,this.boundingBox.top=this.top-n,this.boundingBox.bottom=this.top+this.height+n,this.boundingBox.right=this.left+this.width+n}},{key:"distanceToBorder",value:function(t,e){this.resize(t);var i=this.options.borderWidth;return Math.min(Math.abs(this.width/2/Math.cos(e)),Math.abs(this.height/2/Math.sin(e)))+i}}]),e}(h.default);e.default=d},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;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,i=2*this.options.size*o):(e=this.imageObj.width,i=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,h=(o?a:r)/this.body.view.scale;t.lineWidth=Math.min(this.width,h),t.strokeStyle=o?this.options.color.highlight.border:n?this.options.color.hover.border:this.options.color.border,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.save(),h>0&&(this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t)),t.restore()}},{key:"_drawImageAtPosition",value:function(t){if(0!=this.imageObj.width){t.globalAlpha=1,this.enableShadow(t);var e=1;!0===this.options.shapeProperties.interpolation&&(e=this.imageObj.width/this.width/this.body.view.scale),this.imageObj.drawImageAtPosition(t,e,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}(h.default);e.default=d},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}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&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0&&(this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t)),t.restore(),this.updateBoundingBox(e,i,t,o),this.labelModule.draw(t,e,i,o)}},{key:"updateBoundingBox",value:function(t,e,i,o){this.resize(i,o),this.left=t-.5*this.width,this.top=e-.5*this.height,this.boundingBox.left=this.left,this.boundingBox.top=this.top,this.boundingBox.bottom=this.top+this.height,this.boundingBox.right=this.left+this.width}},{key:"distanceToBorder",value:function(t,e){return this._distanceToBorder(t,e)}}]),e}(h.default);e.default=d},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}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&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0&&(this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t)),t.restore(),void 0!==this.options.label){var l=n+.5*this.height+3;this.labelModule.draw(t,o,l,s,"hanging")}this.updateBoundingBox(o,n)}},{key:"updateBoundingBox",value:function(t,e){this.boundingBox.top=e-this.options.size,this.boundingBox.left=t-this.options.size,this.boundingBox.right=t+this.options.size,this.boundingBox.bottom=e+this.options.size,void 0!==this.options.label&&this.labelModule.size.width>0&&(this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelModule.size.height+3))}}]),e}(h.default);e.default=d},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}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&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0&&(this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t)),t.restore(),this.updateBoundingBox(e,i,t,o),this.labelModule.draw(t,e,i,o)}},{key:"updateBoundingBox",value:function(t,e,i,o){this.resize(i,o),this.left=t-.5*this.width,this.top=e-.5*this.height,this.boundingBox.left=this.left,this.boundingBox.top=this.top,this.boundingBox.bottom=this.top+this.height,this.boundingBox.right=this.left+this.width}},{key:"distanceToBorder",value:function(t,e){this.resize(t);var i=.5*this.width,o=.5*this.height,n=Math.sin(e)*i,s=Math.cos(e)*o;return i*o/Math.sqrt(n*n+s*s)}}]),e}(h.default);e.default=d},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}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&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0){this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelModule.size.height+5)}}},{key:"_icon",value:function(t,e,i,o){var n=Number(this.options.icon.size);void 0!==this.options.icon.code?(t.font=(o?"bold ":"")+n+"px "+this.options.icon.face,t.fillStyle=this.options.icon.color||"black",t.textAlign="center",t.textBaseline="middle",this.enableShadow(t),t.fillText(this.options.icon.code,e,i),this.disableShadow(t)):console.error("When using the icon shape, you need to define the code in the icon options object. This can be done per node or globally.")}},{key:"distanceToBorder",value:function(t,e){return this._distanceToBorder(t,e)}}]),e}(h.default);e.default=d},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}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&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0&&(this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t)),t.restore(),t.closePath()}this._drawImageAtPosition(t),this._drawImageLabel(t,e,i,o||n),this.updateBoundingBox(e,i)}},{key:"updateBoundingBox",value:function(t,e){this.resize(),this.left=t-this.width/2,this.top=e-this.height/2,this.boundingBox.top=this.top,this.boundingBox.left=this.left,this.boundingBox.right=this.left+this.width,this.boundingBox.bottom=this.top+this.height,void 0!==this.options.label&&this.labelModule.size.width>0&&(this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelOffset))}},{key:"distanceToBorder",value:function(t,e){return this._distanceToBorder(t,e)}}]),e}(h.default);e.default=d},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}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&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i1&&void 0!==arguments[1]&&arguments[1],o=this.body.data.edges;if(t instanceof u||t instanceof c)this.body.data.edges=t;else if(Array.isArray(t))this.body.data.edges=new u,this.body.data.edges.add(t);else{if(t)throw new TypeError("Array or DataSet expected");this.body.data.edges=new u}if(o&&l.forEach(this.edgesListeners,function(t,e){o.off(e,t)}),this.body.edges={},this.body.data.edges){l.forEach(this.edgesListeners,function(t,i){e.body.data.edges.on(i,t)});var n=this.body.data.edges.getIds();this.add(n,!0)}!1===i&&this.body.emitter.emit("_dataChanged")}},{key:"add",value:function(t){for(var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=this.body.edges,o=this.body.data.edges,n=0;ni.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=this.from.x,i=this.from.y,o=this.to.x,n=this.to.y,s=t.left,r=t.top;return this.edgeType.getDistanceToEdge(e,i,o,n,s,r)<10}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);(o<-1&&i<0||o>0&&i<0)&&(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:"cleanup",value:function(){return this.edgeType.cleanup()}}],[{key:"parseOptions",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},n=["arrowStrikethrough","id","from","hidden","hoverWidth","label","labelHighlightBold","length","line","opacity","physics","scaling","selectionWidth","selfReferenceSize","to","title","value","width"];if(y.selectiveDeepExtend(n,t,e,i),y.mergeOptions(t,e,"smooth",i,o),y.mergeOptions(t,e,"shadow",i,o),void 0!==e.dashes&&null!==e.dashes?t.dashes=e.dashes:!0===i&&null===e.dashes&&(t.dashes=Object.create(o.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),y.mergeOptions(t.scaling,e.scaling,"label",i,o.scaling)):!0===i&&null===e.scaling&&(t.scaling=Object.create(o.scaling)),void 0!==e.arrows&&null!==e.arrows)if("string"==typeof e.arrows){var r=e.arrows.toLowerCase();-1!=r.indexOf("to")&&(t.arrows.to.enabled=!0),-1!=r.indexOf("middle")&&(t.arrows.middle.enabled=!0),-1!=r.indexOf("from")&&(t.arrows.from.enabled=!0)}else{if("object"!==s(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));y.mergeOptions(t.arrows,e.arrows,"to",i,o.arrows),y.mergeOptions(t.arrows,e.arrows,"middle",i,o.arrows),y.mergeOptions(t.arrows,e.arrows,"from",i,o.arrows)}else!0===i&&null===e.arrows&&(t.arrows=Object.create(o.arrows));if(void 0!==e.color&&null!==e.color)if(t.color=y.deepExtend({},t.color,!0),y.isString(e.color))t.color.color=e.color,t.color.highlight=e.color,t.color.hover=e.color,t.color.inherit=!1;else{var a=!1;void 0!==e.color.color&&(t.color.color=e.color.color,a=!0),void 0!==e.color.highlight&&(t.color.highlight=e.color.highlight,a=!0),void 0!==e.color.hover&&(t.color.hover=e.color.hover,a=!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&&!0===a&&(t.color.inherit=!1)}else!0===i&&null===e.color&&(t.color=y.bridgeObject(o.color));void 0!==e.font&&null!==e.font?h.default.parseOptions(t.font,e):!0===i&&null===e.font&&(t.font=y.bridgeObject(o.font))}}]),t}();e.default=g},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}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&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(t){n=!0,s=t}finally{try{!o&&a.return&&a.return()}finally{if(n)throw s}}return i}return function(e,i){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),a=function(){function t(t,e){for(var i=0;iMath.abs(e)||!0===this.options.smooth.forceDirection||"horizontal"===this.options.smooth.forceDirection)&&"vertical"!==this.options.smooth.forceDirection?(o=this.from.y,s=this.to.y,i=this.from.x-r*t,n=this.to.x+r*t):(o=this.from.y-r*e,s=this.to.y+r*e,i=this.from.x,n=this.to.x),[{x:i,y:o},{x:n,y:s}]}},{key:"getViaNode",value:function(){return this._getViaCoordinates()}},{key:"_findBorderPosition",value:function(t,e){return this._findBorderPositionBezier(t,e)}},{key:"_getDistanceToEdge",value:function(t,e,i,o,n,s){var a=arguments.length>6&&void 0!==arguments[6]?arguments[6]:this._getViaCoordinates(),h=r(a,2),d=h[0],l=h[1];return this._getDistanceToBezierEdge(t,e,i,o,n,s,d,l)}},{key:"getPoint",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this._getViaCoordinates(),i=r(e,2),o=i[0],n=i[1],s=t,a=[];return a[0]=Math.pow(1-s,3),a[1]=3*s*Math.pow(1-s,2),a[2]=3*Math.pow(s,2)*(1-s),a[3]=Math.pow(s,3),{x:a[0]*this.fromPoint.x+a[1]*o.x+a[2]*n.x+a[3]*this.toPoint.x,y:a[0]*this.fromPoint.y+a[1]*o.y+a[2]*n.y+a[3]*this.toPoint.y}}}]),e}(d.default);e.default=l},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}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&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0&&(d=this._getDistanceToLine(f,m,c,p,n,s),h=d2&&void 0!==arguments[2]?arguments[2]:this._getViaCoordinates(),h=0,d=0,l=1,u=this.to,c=!1;for(t.id===this.from.id&&(u=this.from,c=!0);d<=l&&h<10;){var p=.5*(d+l);if(i=this.getPoint(p,a),o=Math.atan2(u.y-i.y,u.x-i.x),n=u.distanceToBorder(e,o),s=Math.sqrt(Math.pow(i.x-u.x,2)+Math.pow(i.y-u.y,2)),r=n-s,Math.abs(r)<.2)break;r<0?!1===c?d=p:l=p:!1===c?l=p:d=p,h++}return i.t=p,i}},{key:"_getDistanceToBezierEdge",value:function(t,e,i,o,n,s,r){var a=1e9,h=void 0,d=void 0,l=void 0,u=void 0,c=void 0,p=t,f=e;for(d=1;d<10;d++)l=.1*d,u=Math.pow(1-l,2)*t+2*l*(1-l)*r.x+Math.pow(l,2)*i,c=Math.pow(1-l,2)*e+2*l*(1-l)*r.y+Math.pow(l,2)*o,d>0&&(h=this._getDistanceToLine(p,f,u,c,n,s),a=ho.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=0,d=this.options.selfReferenceSize,l=void 0,u=void 0,c=void 0,p=void 0,f=void 0,m=.5*(s+r);s<=r&&h<10&&(m=.5*(s+r),l=this._pointOnCircle(o,n,d,m),u=Math.atan2(t.y-l.y,t.x-l.x),c=t.distanceToBorder(e,u),p=Math.sqrt(Math.pow(l.x-t.x,2)+Math.pow(l.y-t.y,2)),f=c-p,!(Math.abs(f)<.05));)f>0?a>0?s=m:r=m:a>0?r=m:s=m,h++;return l.t=m,l}},{key:"getLineWidth",value:function(t,e){return!0===t?Math.max(this.selectionWidth,.3/this.body.view.scale):!0===e?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(!1!==o.inherit){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,!1===this.from.selected&&!1===this.to.selected?(s=r.overrideOpacity(this.from.options.color.border,this.options.color.opacity),a=r.overrideOpacity(this.to.options.color.border,this.options.color.opacity)):!0===this.from.selected&&!1===this.to.selected?a=this.to.options.color.border:!1===this.from.selected&&!0===this.to.selected&&(s=this.from.options.color.border),n.addColorStop(0,s),n.addColorStop(1,a),n}!0===this.colorDirty&&("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!0===this.colorDirty&&(this.color.highlight=o.highlight,this.color.hover=o.hover,this.color.color=r.overrideOpacity(o.color,o.opacity));return this.colorDirty=!1,!0===e?this.color.highlight:!0===i?this.color.hover:this.color.color}},{key:"_circle",value:function(t,e,i,o){this.enableShadow(t),t.beginPath(),t.arc(e,i,o,0,2*Math.PI,!1),t.stroke(),this.disableShadow(t)}},{key:"getDistanceToEdge",value:function(t,e,i,o,s,r,a){var h=0;if(this.from!=this.to)h=this._getDistanceToEdge(t,e,i,o,s,r,a);else{var d=this._getCircleData(),l=n(d,3),u=l[0],c=l[1],p=l[2],f=u-s,m=c-r;h=Math.abs(Math.sqrt(f*f+m*m)-p)}return this.labelModule.size.lefts&&this.labelModule.size.topr?0:h}},{key:"_getDistanceToLine",value:function(t,e,i,o,n,s){var r=i-t,a=o-e,h=r*r+a*a,d=((n-t)*r+(s-e)*a)/h;d>1?d=1:d<0&&(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:"getArrowData",value:function(t,e,i,o,s){var r=void 0,a=void 0,h=void 0,d=void 0,l=void 0,u=void 0,c=this.getLineWidth(o,s);if("from"===e?(h=this.from,d=this.to,l=.1,u=this.options.arrows.from.scaleFactor):"to"===e?(h=this.to,d=this.from,l=-.1,u=this.options.arrows.to.scaleFactor):(h=this.to,d=this.from,u=this.options.arrows.middle.scaleFactor),h!=d)if("middle"!==e)if(!0===this.options.smooth.enabled){a=this.findBorderPosition(h,t,{via:i});var p=this.getPoint(Math.max(0,Math.min(1,a.t+l)),i);r=Math.atan2(a.y-p.y,a.x-p.x)}else r=Math.atan2(h.y-d.y,h.x-d.x),a=this.findBorderPosition(h,t);else r=Math.atan2(h.y-d.y,h.x-d.x),a=this.getPoint(.5,i);else{var f=this._getCircleData(t),m=n(f,3),v=m[0],y=m[1],g=m[2];"from"===e?(a=this.findBorderPosition(this.from,t,{x:v,y:y,low:.25,high:.6,direction:-1}),r=-2*a.t*Math.PI+1.5*Math.PI+.1*Math.PI):"to"===e?(a=this.findBorderPosition(this.from,t,{x:v,y:y,low:.6,high:1,direction:1}),r=-2*a.t*Math.PI+1.5*Math.PI-1.1*Math.PI):(a=this._pointOnCircle(v,y,g,.175),r=3.9269908169872414)}var b=15*u+3*c;return{point:a,core:{x:a.x-.9*b*Math.cos(r),y:a.y-.9*b*Math.sin(r)},angle:r,length:b}}},{key:"drawArrowHead",value:function(t,e,i,o){t.strokeStyle=this.getColor(t,e,i),t.fillStyle=t.strokeStyle,t.lineWidth=this.getLineWidth(e,i),t.arrow(o.point.x,o.point.y,o.angle,o.length),this.enableShadow(t),t.fill(),this.disableShadow(t)}},{key:"enableShadow",value:function(t){!0===this.options.shadow.enabled&&(t.shadowColor=this.options.shadow.color,t.shadowBlur=this.options.shadow.size,t.shadowOffsetX=this.options.shadow.x,t.shadowOffsetY=this.options.shadow.y)}},{key:"disableShadow",value:function(t){!0===this.options.shadow.enabled&&(t.shadowColor="rgba(0,0,0,0)",t.shadowBlur=0,t.shadowOffsetX=0,t.shadowOffsetY=0)}}]),t}();e.default=a},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}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&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i1&&void 0!==arguments[1]?arguments[1]:this.via,i=t;return{x:Math.pow(1-i,2)*this.fromPoint.x+2*i*(1-i)*e.x+Math.pow(i,2)*this.toPoint.x,y:Math.pow(1-i,2)*this.fromPoint.y+2*i*(1-i)*e.y+Math.pow(i,2)*this.toPoint.y}}},{key:"_findBorderPosition",value:function(t,e){return this._findBorderPositionBezier(t,e,this.via)}},{key:"_getDistanceToEdge",value:function(t,e,i,o,n,s){return this._getDistanceToBezierEdge(t,e,i,o,n,s,this.via)}}]),e}(h.default);e.default=d},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}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&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i=this.to.y?this.from.x<=this.to.x?(t=this.from.x+i*s,e=this.from.y-i*s):this.from.x>this.to.x&&(t=this.from.x-i*s,e=this.from.y-i*s):this.from.ythis.to.x&&(t=this.from.x-i*s,e=this.from.y+i*s)),"discrete"===o&&(t=nMath.abs(this.from.y-this.to.y)&&(this.from.y>=this.to.y?this.from.x<=this.to.x?(t=this.from.x+i*n,e=this.from.y-i*n):this.from.x>this.to.x&&(t=this.from.x-i*n,e=this.from.y-i*n):this.from.ythis.to.x&&(t=this.from.x-i*n,e=this.from.y+i*n)),"discrete"===o&&(e=sMath.abs(this.from.y-this.to.y)&&(t=this.from.x=this.to.y?this.from.x<=this.to.x?(t=this.from.x+i*s,e=this.from.y-i*s,t=this.to.xthis.to.x&&(t=this.from.x-i*s,e=this.from.y-i*s,t=this.to.x>t?this.to.x:t):this.from.ythis.to.x&&(t=this.from.x-i*s,e=this.from.y+i*s,t=this.to.x>t?this.to.x:t)):Math.abs(this.from.x-this.to.x)>Math.abs(this.from.y-this.to.y)&&(this.from.y>=this.to.y?this.from.x<=this.to.x?(t=this.from.x+i*n,e=this.from.y-i*n,e=this.to.y>e?this.to.y:e):this.from.x>this.to.x&&(t=this.from.x-i*n,e=this.from.y-i*n,e=this.to.y>e?this.to.y:e):this.from.ythis.to.x&&(t=this.from.x-i*n,e=this.from.y+i*n,e=this.to.y2&&void 0!==arguments[2]?arguments[2]:{};return this._findBorderPositionBezier(t,e,i.via)}},{key:"_getDistanceToEdge",value:function(t,e,i,o,n,s){var r=arguments.length>6&&void 0!==arguments[6]?arguments[6]:this._getViaCoordinates();return this._getDistanceToBezierEdge(t,e,i,o,n,s,r)}},{key:"getPoint",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this._getViaCoordinates(),i=t;return{x:Math.pow(1-i,2)*this.fromPoint.x+2*i*(1-i)*e.x+Math.pow(i,2)*this.toPoint.x,y:Math.pow(1-i,2)*this.fromPoint.y+2*i*(1-i)*e.y+Math.pow(i,2)*this.toPoint.y}}}]),e}(h.default);e.default=d},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}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&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i=6){var a=r.length-6,h=r.indexOf("vis.js",a);if(h===a){i.p=r.substr(0,r.lastIndexOf("/")+1);break}}}}this.physicsWorker=new u.default,this.physicsWorker.addEventListener("message",function(e){t.physicsWorkerMessageHandler(e)}),this.physicsWorker.onerror=function(e){console.error("Falling back to embedded physics engine",e),t.initEmbeddedPhysics()},this.positionUpdateHandler=function(e){t.physicsWorker.postMessage({type:"updatePositions",data:e})},this.physicsUpdateHandler=function(e){t._physicsUpdateHandler(e)}}}},{key:"_physicsUpdateHandler",value:function(t){if(void 0!==t.options.physics)if(t.options.physics){var e={nodes:{},edges:{}};"node"===t.type?e.nodes[t.id]=this.createPhysicsNode(t.id):"edge"===t.type?e.edges[t.id]=this.createPhysicsEdge(t.id):console.warn("invalid element type"),this.physicsWorker.postMessage({type:"addElements",data:e})}else{var i={nodeIds:[],edgeIds:[]};"node"===t.type?i.nodeIds=[t.id.toString()]:"edge"===t.type?i.edgeIds=[t.id.toString()]:console.warn("invalid element type"),this.physicsWorker.postMessage({type:"removeElements",data:i})}else this.physicsWorker.postMessage({type:"updateProperties",data:t})}},{key:"physicsWorkerMessageHandler",value:function(t){var e=t.data;switch(e.type){case"tickResults":this.stabilized=e.data.stabilized,this.stabilizationIterations=e.data.stabilizationIterations,this._receivedPositions(e.data.positions);break;case"finalizeStabilization":this._finalizeStabilization();break;case"emit":this.emit(e.data.event,e.data.data);break;default:console.warn("unhandled physics worker message:",e)}}},{key:"_receivedPositions",value:function(t){for(var e=0;e0&&void 0!==arguments[0])||arguments[0];this.stabilized=!0,this._updateWorkerStabilized(),!0===t&&this._emitStabilized(),void 0!==this.viewFunction&&(this.body.emitter.off("initRedraw",this.viewFunction),this.viewFunction=void 0,!0===t&&this.body.emitter.emit("_stopRendering"))}},{key:"_updateWorkerStabilized",value:function(){this.physicsWorker&&this.physicsWorker.postMessage({type:"setStabilized",data:this.stabilized})}},{key:"simulationStep",value:function(){if(this.physicsWorker)this.physicsWorker.postMessage({type:"physicsTick"});else{var t=Date.now();this.physicsTick();(Date.now()-t<.4*this.simulationInterval||!0===this.runDoubleSpeed)&&!1===this.stabilized&&(this.physicsTick(),this.runDoubleSpeed=!0)}!0===this.stabilized&&this.stopSimulation()}},{key:"_sendWorkerStabilized",value:function(){this.physicsWorker&&this.physicsWorker.postMessage({type:"stabilized"})}},{key:"_emitStabilized",value:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.stabilizationIterations;(this.stabilizationIterations>1||!0===this.startedStabilization)&&setTimeout(function(){t.body.emitter.emit("stabilized",{iterations:e}),t.startedStabilization=!1,t.stabilizationIterations=0,t._sendWorkerStabilized()},0)}},{key:"createPhysicsNode",value:function(t){var e=this.body.nodes[t];if(e)return{id:e.id.toString(),x:e.x,y:e.y,edges:{length:e.edges.length},options:{fixed:{x:e.options.fixed.x,y:e.options.fixed.y},mass:e.options.mass}}}},{key:"createPhysicsEdge",value:function(t){var e=this.body.edges[t];if(e&&!0===e.options.physics){var i={id:e.id,connected:e.connected,edgeType:{},toId:e.toId,fromId:e.fromId,options:{length:e.length}};return e.edgeType.via&&(i.edgeType={via:{id:e.edgeType.via.id}}),i}}},{key:"initPhysicsData",value:function(){var t=this.body.nodes,e=this.body.edges;this.physicsBody.forces={},this.physicsBody.physicsNodeIndices=[],this.physicsBody.physicsEdgeIndices=[];var i={},o={};for(var n in t)t.hasOwnProperty(n)&&!0===t[n].options.physics&&(this.physicsBody.physicsNodeIndices.push(n),this.physicsWorker&&(i[n]=this.createPhysicsNode(n)));for(var s in e)e.hasOwnProperty(s)&&!0===e[s].options.physics&&(this.physicsBody.physicsEdgeIndices.push(s),this.physicsWorker&&(o[s]=this.createPhysicsEdge(s)));for(var r=0;re?s[t].x>0?e:-e:s[t].x,i.setX(i.x+s[t].x*o)}else n[t].x=0,s[t].x=0;if(!1===i.options.fixed.y){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.setY(i.y+s[t].y*o)}else n[t].y=0,s[t].y=0;return Math.sqrt(Math.pow(s[t].x,2)+Math.pow(s[t].y,2))}},{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].setFixed(!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].setFixed({x:this.freezeCache[e].x,y:this.freezeCache[e].y});this.freezeCache={}}},{key:"stabilize",value:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.options.stabilization.iterations;if("number"!=typeof e&&(console.log("The stabilize method needs a numeric amount of iterations. Switching to default: ",this.options.stabilization.iterations),e=this.options.stabilization.iterations),0===this.physicsBody.physicsNodeIndices.length)return void(this.ready=!0);this.adaptiveTimestep=this.options.adaptiveTimestep,this.body.emitter.emit("_resizeNodes"),this.stopSimulation(),this.stabilized=!1,this.body.emitter.emit("_blockRedraw"),this.targetIterations=e,!0===this.options.stabilization.onlyDynamicEdges&&this._freezeNodes(),this.stabilizationIterations=0,this.physicsWorker?this.physicsWorker.postMessage({type:"stabilize",data:{targetIterations:e}}):setTimeout(function(){return t._stabilizationBatch()},0)}},{key:"_finalizeStabilization",value:function(){this.body.emitter.emit("_allowRedraw"),!0===this.options.stabilization.fit&&this.body.emitter.emit("fit"),!0===this.options.stabilization.onlyDynamicEdges&&this._restoreFrozenNodes(),this.body.emitter.emit("stabilizationIterationsDone"),this.body.emitter.emit("_requestRedraw"),!0===this.stabilized?this._emitStabilized():this.startSimulation(),this.ready=!0}}]),e}(d.default);e.default=p},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.3))return!1;return!0}},{key:"moveNodes",value:function(){for(var t=this.physicsBody.physicsNodeIndices,e=this.options.maxVelocity?this.options.maxVelocity:1e9,i=0,o=0,n=0;n0){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;s0&&(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;h0&&(dr&&(r=d),la&&(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=Math.max(1e-5,Math.abs(r-n)),p=.5*c,f=.5*(n+r),m=.5*(s+a),v={root:{centerOfMass:{x:0,y:0},mass:0,range:{minX:f-p,maxX:f+p,minY:m-p,maxY:m+p},size:c,calcSize:1/c,children:{data:null},maxWidth:0,level:0,childrenCount:4}};this._splitBranch(v.root);for(var y=0;y0&&this._placeInTree(v.root,i);return v}},{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},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}(h.default);e.default=d},function(t,e,i){var o=i(111),n=function(t){return t&&t.__esModule?t:{default:t}}(o),s=new n.default(function(t){return postMessage(t)});self.addEventListener("message",function(t){return s.handleMessage(t)},!1)},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}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&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i1&&void 0!==arguments[1])||arguments[1],i=Object.keys(t.nodes),o=0;o0;){var t=this.toRemove.nodeIds.pop(),e=this.physicsBody.physicsNodeIndices.indexOf(t);e>-1&&this.physicsBody.physicsNodeIndices.splice(e,1),delete this.physicsBody.forces[t],delete this.physicsBody.velocities[t],delete this.body.nodes[t]}for(;this.toRemove.edgeIds.length>0;){var i=this.toRemove.edgeIds.pop(),o=this.physicsBody.physicsEdgeIndices.indexOf(i);o>-1&&this.physicsBody.physicsEdgeIndices.splice(o,1),delete this.body.edges[i]}}},{key:"initPhysicsData",value:function(t){this.physicsBody.forces={},this.physicsBody.physicsNodeIndices=[],this.physicsBody.physicsEdgeIndices=[],this.body.nodes=t.nodes,this.body.edges=t.edges,this.addElements(t,!1);for(var e in this.physicsBody.velocities)void 0===this.body.nodes[e]&&delete this.physicsBody.velocities[e]}},{key:"_performStep",value:function(t,e){var i=this.body.nodes[t],o=this.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},!1===i.options.fixed.x){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(!1===i.options.fixed.y){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;return Math.sqrt(Math.pow(s[t].x,2)+Math.pow(s[t].y,2))}},{key:"_finalizeStabilization",value:function(){this.sendTickResults(),this.postMessage({type:"finalizeStabilization"})}}]),e}(h.default);e.default=d},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"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},r=function(){function t(t,e){for(var i=0;i=t&&i.push(n.id)}for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:{},e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(void 0===t.joinCondition)throw new Error("Cannot call clusterByNodeData without a joinCondition function in the options.");t=this._checkOptions(t);for(var i={},o={},n=0;n2&&void 0!==arguments[2])||arguments[2];e=this._checkOptions(e);for(var o=[],n={},s=void 0,r=void 0,a=void 0,d=void 0,l=void 0,u=0;u0&&Object.keys(p).length>0&&!0===m&&o.push({nodes:c,edges:p})}}}for(var b=0;b1&&void 0!==arguments[1])||arguments[1];this.clusterByEdgeCount(1,t,e)}},{key:"clusterBridges",value:function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];this.clusterByEdgeCount(2,t,e)}},{key:"clusterByConnection",value:function(t,e){var i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];if(void 0===t)throw new Error("No nodeId supplied to clusterByConnection!");if(void 0===this.body.nodes[t])throw new Error("The nodeId given to clusterByConnection does not exist!");var o=this.body.nodes[t];e=this._checkOptions(e,o),void 0===e.clusterNodeProperties.x&&(e.clusterNodeProperties.x=o.x),void 0===e.clusterNodeProperties.y&&(e.clusterNodeProperties.y=o.y),void 0===e.clusterNodeProperties.fixed&&(e.clusterNodeProperties.fixed={},e.clusterNodeProperties.fixed.x=o.options.fixed.x,e.clusterNodeProperties.fixed.y=o.options.fixed.y);var n={},s={},r=o.id,a=h.default.cloneOptions(o);n[r]=o;for(var d=0;d0&&void 0!==arguments[0]?arguments[0]:{};return void 0===t.clusterEdgeProperties&&(t.clusterEdgeProperties={}),void 0===t.clusterNodeProperties&&(t.clusterNodeProperties={}),t}},{key:"_cluster",value:function(t,e,i){var o=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];if(!(Object.keys(t).length<2)){for(var n in t)if(t.hasOwnProperty(n)&&void 0!==this.clusteredNodes[n])return;var s=u.deepExtend({},i.clusterNodeProperties);if(void 0!==i.processProperties){var r=[];for(var a in t)if(t.hasOwnProperty(a)){var d=h.default.cloneOptions(t[a]);r.push(d)}var c=[];for(var p in e)if(e.hasOwnProperty(p)&&"clusterEdge:"!==p.substr(0,12)){var f=h.default.cloneOptions(e[p],"edge");c.push(f)}if(!(s=i.processProperties(s,r,c)))throw new Error("The processProperties function does not return properties!")}void 0===s.id&&(s.id="cluster:"+u.randomUUID());var m=s.id;void 0===s.label&&(s.label="cluster");var v=void 0;void 0===s.x&&(v=this._getClusterPosition(t),s.x=v.x),void 0===s.y&&(void 0===v&&(v=this._getClusterPosition(t)),s.y=v.y),s.id=m;var y=this.body.functions.createNode(s,l.default);y.isCluster=!0,y.containedNodes=t,y.containedEdges=e,y.clusterEdgeProperties=i.clusterEdgeProperties,this.body.nodes[s.id]=y,this._createClusterEdges(t,e,s,i.clusterEdgeProperties);for(var g in e)if(e.hasOwnProperty(g)&&void 0!==this.body.edges[g]){var b=this.body.edges[g];this._backupEdgeOptions(b),b.setOptions({physics:!1,hidden:!0})}for(var _ in t)t.hasOwnProperty(_)&&(this.clusteredNodes[_]={clusterId:s.id,node:this.body.nodes[_]},this.body.nodes[_].setOptions({hidden:!0,physics:!1}));s.id=void 0,!0===o&&this.body.emitter.emit("_dataChanged")}}},{key:"_backupEdgeOptions",value:function(t){void 0===this.clusteredEdges[t.id]&&(this.clusteredEdges[t.id]={physics:t.options.physics,hidden:t.options.hidden})}},{key:"_restoreEdge",value:function(t){var e=this.clusteredEdges[t.id];void 0!==e&&(t.setOptions({physics:e.physics,hidden:e.hidden}),delete this.clusteredEdges[t.id])}},{key:"isCluster",value:function(t){return void 0!==this.body.nodes[t]?!0===this.body.nodes[t].isCluster:(console.log("Node does not exist."),!1)}},{key:"_getClusterPosition",value:function(t){for(var e=Object.keys(t),i=t[e[0]].x,o=t[e[0]].x,n=t[e[0]].y,s=t[e[0]].y,r=void 0,a=1;ao?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=!(arguments.length>2&&void 0!==arguments[2])||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 c=e.releaseFunction(a,r);for(var p in n)if(n.hasOwnProperty(p)){var f=this.body.nodes[p];void 0!==c[p]&&(f.x=void 0===c[p].x?o.x:c[p].x,f.y=void 0===c[p].y?o.y:c[p].y)}}else for(var m in n)if(n.hasOwnProperty(m)){var v=this.body.nodes[m];v=n[m],!1===v.options.fixed.x&&(v.x=o.x),!1===v.options.fixed.y&&(v.y=o.y)}for(var y in n)if(n.hasOwnProperty(y)){var g=this.body.nodes[y];g.vx=o.vx,g.vy=o.vy,g.setOptions({hidden:!1,physics:!0}),delete this.clusteredNodes[y]}for(var b=[],_=0;_o&&(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=c},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;i1&&void 0!==arguments[1]?arguments[1]:[],o=1e9,n=-1e9,s=1e9,r=-1e9;if(i.length>0)for(var a=0;ae.shape.boundingBox.left&&(s=e.shape.boundingBox.left),re.shape.boundingBox.top&&(o=e.shape.boundingBox.top),n1&&void 0!==arguments[1]?arguments[1]:[],o=1e9,n=-1e9,s=1e9,r=-1e9;if(i.length>0)for(var a=0;ae.x&&(s=e.x),re.y&&(o=e.y),n0,t.renderTimer=void 0}),this.body.emitter.on("destroy",function(){t.renderRequests=0,t.allowRedraw=!1,t.renderingActive=!1,!0===t.requiresTimeout?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(){!0===this.renderingActive&&void 0===this.renderTimer&&(!0===this.requiresTimeout?this.renderTimer=window.setTimeout(this._renderStep.bind(this),this.simulationInterval):this.renderTimer=window.requestAnimationFrame(this._renderStep.bind(this)))}},{key:"_renderStep",value:function(){!0===this.renderingActive&&(this.renderTimer=void 0,!0===this.requiresTimeout&&this._startRendering(),this._redraw(),!1===this.requiresTimeout&&this._startRendering())}},{key:"redraw",value:function(){this.body.emitter.emit("setSize"),this._redraw()}},{key:"_requestRedraw",value:function(){var t=this;!0!==this.redrawRequested&&!1===this.renderingActive&&!0===this.allowRedraw&&(this.redrawRequested=!0,!0===this.requiresTimeout?window.setTimeout(function(){t._redraw(!1)},0):window.requestAnimationFrame(function(){t._redraw(!1)}))}},{key:"_redraw",value:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(!0===this.allowRedraw){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(),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;if(e.clearRect(0,0,i,o),0===this.canvas.frame.clientWidth)return;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(),!1===t&&(!1===this.dragging||!0===this.dragging&&!1===this.options.hideEdgesOnDrag)&&this._drawEdges(e),(!1===this.dragging||!0===this.dragging&&!1===this.options.hideNodesOnDrag)&&this._drawNodes(e,t),e.beginPath(),this.body.emitter.emit("afterDrawing",e),e.closePath(),e.restore(),!0===t&&e.clearRect(0,0,i,o)}}},{key:"_resizeNodes",value:function(){var t=this.canvas.frame.canvas.getContext("2d");void 0===this.pixelRatio&&(this.pixelRatio=(window.devicePixelRatio||1)/(t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1)),t.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0),t.save(),t.translate(this.body.view.translation.x,this.body.view.translation.y),t.scale(this.body.view.scale,this.body.view.scale);var e=this.body.nodes,i=void 0;for(var o in e)e.hasOwnProperty(o)&&(i=e[o],i.resize(t),i.updateBoundingBox(t,i.selected));t.restore()}},{key:"_drawNodes",value:function(t){for(var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=this.body.nodes,o=this.body.nodeIndices,n=void 0,s=[],r=this.canvas.DOMtoCanvas({x:-20,y:-20}),a=this.canvas.DOMtoCanvas({x:this.canvas.frame.canvas.clientWidth+20,y:this.canvas.frame.canvas.clientHeight+20}),h={top:r.y,left:r.x,bottom:a.y,right:a.x},d=0;d0&&void 0!==arguments[0]?arguments[0]:this.pixelRatio;!0===this.initialized&&(this.cameraState.previousWidth=this.frame.canvas.width/t,this.cameraState.previousHeight=this.frame.canvas.height/t,this.cameraState.scale=this.body.view.scale,this.cameraState.position=this.DOMtoCanvas({x:.5*this.frame.canvas.width/t,y:.5*this.frame.canvas.height/t}))}},{key:"_setCameraState",value:function(){if(void 0!==this.cameraState.scale&&0!==this.frame.canvas.clientWidth&&0!==this.frame.canvas.clientHeight&&0!==this.pixelRatio&&this.cameraState.previousWidth>0){var t=this.frame.canvas.width/this.pixelRatio/this.cameraState.previousWidth,e=this.frame.canvas.height/this.pixelRatio/this.cameraState.previousHeight,i=this.cameraState.scale;1!=t&&1!=e?i=.5*this.cameraState.scale*(t+e):1!=t?i=this.cameraState.scale*t:1!=e&&(i=this.cameraState.scale*e),this.body.view.scale=i;var o=this.DOMtoCanvas({x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight}),n={x:o.x-this.cameraState.position.x,y:o.y-this.cameraState.position.y};this.body.view.translation.x+=n.x*this.body.view.scale,this.body.view.translation.y+=n.y*this.body.view.scale}}},{key:"_prepareValue",value:function(t){if("number"==typeof t)return t+"px";if("string"==typeof t){if(-1!==t.indexOf("%")||-1!==t.indexOf("px"))return t;if(-1===t.indexOf("%"))return t+"px"}throw new Error("Could not use the value supplied for width or height:"+t)}},{key:"_create",value:function(){for(;this.body.container.hasChildNodes();)this.body.container.removeChild(this.body.container.firstChild);if(this.frame=document.createElement("div"),this.frame.className="vis-network",this.frame.style.position="relative",this.frame.style.overflow="hidden",this.frame.tabIndex=900,this.frame.canvas=document.createElement("canvas"),this.frame.canvas.style.position="relative",this.frame.appendChild(this.frame.canvas),this.frame.canvas.getContext){var t=this.frame.canvas.getContext("2d");this.pixelRatio=(window.devicePixelRatio||1)/(t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1),this.frame.canvas.getContext("2d").setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}else{var e=document.createElement("DIV");e.style.color="red",e.style.fontWeight="bold",e.style.padding="10px",e.innerHTML="Error: your browser does not support HTML canvas",this.frame.canvas.appendChild(e)}this.body.container.appendChild(this.frame),this.body.view.scale=1,this.body.view.translation={x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight},this._bindHammer()}},{key:"_bindHammer",value:function(){var t=this;void 0!==this.hammer&&this.hammer.destroy(),this.drag={},this.pinch={},this.hammer=new s(this.frame.canvas),this.hammer.get("pinch").set({enable:!0}),this.hammer.get("pan").set({threshold:5,direction:s.DIRECTION_ALL}),r.onTouch(this.hammer,function(e){t.body.eventListeners.onTouch(e)}),this.hammer.on("tap",function(e){t.body.eventListeners.onTap(e)}),this.hammer.on("doubletap",function(e){t.body.eventListeners.onDoubleTap(e)}),this.hammer.on("press",function(e){t.body.eventListeners.onHold(e)}),this.hammer.on("panstart",function(e){t.body.eventListeners.onDragStart(e)}),this.hammer.on("panmove",function(e){t.body.eventListeners.onDrag(e)}),this.hammer.on("panend",function(e){t.body.eventListeners.onDragEnd(e)}),this.hammer.on("pinch",function(e){t.body.eventListeners.onPinch(e)}),this.frame.canvas.addEventListener("mousewheel",function(e){t.body.eventListeners.onMouseWheel(e)}),this.frame.canvas.addEventListener("DOMMouseScroll",function(e){t.body.eventListeners.onMouseWheel(e)}),this.frame.canvas.addEventListener("mousemove",function(e){t.body.eventListeners.onMouseMove(e)}),this.frame.canvas.addEventListener("contextmenu",function(e){t.body.eventListeners.onContext(e)}),this.hammerFrame=new s(this.frame),r.onRelease(this.hammerFrame,function(e){t.body.eventListeners.onRelease(e)})}},{key:"setSize",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.options.width,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.options.height;t=this._prepareValue(t),e=this._prepareValue(e);var i=!1,o=this.frame.canvas.width,n=this.frame.canvas.height,s=this.frame.canvas.getContext("2d"),r=this.pixelRatio;return this.pixelRatio=(window.devicePixelRatio||1)/(s.webkitBackingStorePixelRatio||s.mozBackingStorePixelRatio||s.msBackingStorePixelRatio||s.oBackingStorePixelRatio||s.backingStorePixelRatio||1),t!=this.options.width||e!=this.options.height||this.frame.style.width!=t||this.frame.style.height!=e?(this._getCameraState(r),this.frame.style.width=t,this.frame.style.height=e,this.frame.canvas.style.width="100%",this.frame.canvas.style.height="100%",this.frame.canvas.width=Math.round(this.frame.canvas.clientWidth*this.pixelRatio),this.frame.canvas.height=Math.round(this.frame.canvas.clientHeight*this.pixelRatio),this.options.width=t,this.options.height=e,i=!0):(this.frame.canvas.width==Math.round(this.frame.canvas.clientWidth*this.pixelRatio)&&this.frame.canvas.height==Math.round(this.frame.canvas.clientHeight*this.pixelRatio)||this._getCameraState(r),this.frame.canvas.width!=Math.round(this.frame.canvas.clientWidth*this.pixelRatio)&&(this.frame.canvas.width=Math.round(this.frame.canvas.clientWidth*this.pixelRatio),i=!0),this.frame.canvas.height!=Math.round(this.frame.canvas.clientHeight*this.pixelRatio)&&(this.frame.canvas.height=Math.round(this.frame.canvas.clientHeight*this.pixelRatio),i=!0)),!0===i&&(this.body.emitter.emit("resize",{width:Math.round(this.frame.canvas.width/this.pixelRatio),height:Math.round(this.frame.canvas.height/this.pixelRatio),oldWidth:Math.round(o/this.pixelRatio),oldHeight:Math.round(n/this.pixelRatio)}),this._setCameraState()),this.initialized=!0,i}},{key:"_XconvertDOMtoCanvas",value:function(t){return(t-this.body.view.translation.x)/this.body.view.scale}},{key:"_XconvertCanvasToDOM",value:function(t){return t*this.body.view.scale+this.body.view.translation.x}},{key:"_YconvertDOMtoCanvas",value:function(t){return(t-this.body.view.translation.y)/this.body.view.scale}},{key:"_YconvertCanvasToDOM",value:function(t){return t*this.body.view.scale+this.body.view.translation.y}},{key:"canvasToDOM",value:function(t){return{x:this._XconvertCanvasToDOM(t.x),y:this._YconvertCanvasToDOM(t.y)}}},{key:"DOMtoCanvas",value:function(t){return{x:this._XconvertDOMtoCanvas(t.x),y:this._YconvertDOMtoCanvas(t.y)}}}]),t}();e.default=h},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&&void 0!==arguments[0]?arguments[0]:{};this.options=t}},{key:"fit",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{nodes:[]},e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=void 0,o=void 0;if(void 0!==t.nodes&&0!==t.nodes.length||(t.nodes=this.body.nodeIndices),!0===e){var n=0;for(var s in this.body.nodes)if(this.body.nodes.hasOwnProperty(s)){var a=this.body.nodes[s];!0===a.predefinedPosition&&(n+=1)}if(n>.5*this.body.nodeIndices.length)return void this.fit(t,!1);i=r.default.getRange(this.body.nodes,t.nodes);o=12.662/(this.body.nodeIndices.length+7.4147)+.0964822;o*=Math.min(this.canvas.frame.canvas.clientWidth/600,this.canvas.frame.canvas.clientHeight/600)}else{this.body.emitter.emit("_resizeNodes"),i=r.default.getRange(this.body.nodes,t.nodes);var h=1.1*Math.abs(i.maxX-i.minX),d=1.1*Math.abs(i.maxY-i.minY),l=this.canvas.frame.canvas.clientWidth/h,u=this.canvas.frame.canvas.clientHeight/d;o=l<=u?l:u}o>1?o=1:0===o&&(o=1);var c=r.default.findCenter(i),p={position:c,scale:o,animation:t.animation};this.moveTo(p)}},{key:"focus",value:function(t){var e=arguments.length>1&&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){if(void 0===t)return 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}),!1===t.animation&&(t.animation={duration:0}),!0===t.animation&&(t.animation={}),void 0===t.animation.duration&&(t.animation.duration=1e3),void 0===t.animation.easingFunction&&(t.animation.easingFunction="easeInOutQuad"),this.animateView(t)}},{key:"animateView",value:function(t){if(void 0!==t){this.animationEasingFunction=t.animation.easingFunction,this.releaseNode(),!0===t.locked&&(this.lockedOnNodeId=t.lockedOnNode,this.lockedOnNodeOffset=t.offset),0!=this.easingTime&&this._transitionRedraw(!0),this.sourceScale=this.body.view.scale,this.sourceTranslation=this.body.view.translation,this.targetScale=t.scale,this.body.view.scale=this.targetScale;var e=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight}),i={x:e.x-t.position.x,y:e.y-t.position.y};this.targetTranslation={x:this.sourceTranslation.x+i.x*this.targetScale+t.offset.x,y:this.sourceTranslation.y+i.y*this.targetScale+t.offset.y},0===t.animation.duration?void 0!=this.lockedOnNodeId?(this.viewFunction=this._lockedRedraw.bind(this),this.body.emitter.on("initRedraw",this.viewFunction)):(this.body.view.scale=this.targetScale,this.body.view.translation=this.targetTranslation,this.body.emitter.emit("_requestRedraw")):(this.animationSpeed=1/(60*t.animation.duration*.001)||1/60,this.animationEasingFunction=t.animation.easingFunction,this.viewFunction=this._transitionRedraw.bind(this),this.body.emitter.on("initRedraw",this.viewFunction),this.body.emitter.emit("_startRendering"))}}},{key:"_lockedRedraw",value:function(){var t={x:this.body.nodes[this.lockedOnNodeId].x,y:this.body.nodes[this.lockedOnNodeId].y},e=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight}),i={x:e.x-t.x,y:e.y-t.y},o=this.body.view.translation,n={x:o.x+i.x*this.body.view.scale+this.lockedOnNodeOffset.x,y:o.y+i.y*this.body.view.scale+this.lockedOnNodeOffset.y};this.body.view.translation=n}},{key:"releaseNode",value:function(){void 0!==this.lockedOnNodeId&&void 0!==this.viewFunction&&(this.body.emitter.off("initRedraw",this.viewFunction),this.lockedOnNodeId=void 0,this.lockedOnNodeOffset=void 0)}},{key:"_transitionRedraw",value:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.easingTime+=this.animationSpeed,this.easingTime=!0===t?1:this.easingTime;var e=a.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=h},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=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=this.selectionHandler._getSelectedEdgeCount(),n=this.selectionHandler._getSelectedNodeCount(),s=this.selectionHandler.getSelection(),r=void 0;r=!0===i?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.nodesChanged,c=l.edgesChanged,p=!1;h-n>0?(this.selectionHandler._generateClickEvent("selectNode",e,t),r=!0,p=!0):!0===u&&h>0?(this.selectionHandler._generateClickEvent("deselectNode",e,t,s),this.selectionHandler._generateClickEvent("selectNode",e,t),p=!0,r=!0):h-n<0&&(this.selectionHandler._generateClickEvent("deselectNode",e,t,s),r=!0),a-o>0&&!1===p?(this.selectionHandler._generateClickEvent("selectEdge",e,t),r=!0):a>0&&!0===c?(this.selectionHandler._generateClickEvent("deselectEdge",e,t,s),this.selectionHandler._generateClickEvent("selectEdge",e,t),r=!0):a-o<0&&(this.selectionHandler._generateClickEvent("deselectEdge",e,t,s),r=!0),!0===r&&this.selectionHandler._generateClickEvent("select",e,t)}},{key:"_determineIfDifferent",value:function(t,e){for(var i=!1,o=!1,n=0;n10&&(t=10);var o=void 0;void 0!==this.drag&&!0===this.drag.dragging&&(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"),i0&&(this.popupObj=h[u[u.length-1]],s=!0)}if(void 0===this.popupObj&&!1===s){for(var p=this.body.edgeIndices,f=this.body.edges,m=void 0,v=[],y=0;y0&&(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]&&!0===(i=this.body.nodes[this.popup.popupTargetId].isOverlappingWith(e))){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));!1===i&&(this.popupObj=void 0,this.popup.hide(),this.body.emitter.emit("hidePopup"))}}]),t}();e.default=u},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;i700&&(this.body.emitter.emit("fit",{duration:700}),this.touchTime=(new Date).valueOf())}},{key:"_stopMovement",value:function(){for(var t in this.boundFunctions)this.boundFunctions.hasOwnProperty(t)&&(this.body.emitter.off("initRedraw",this.boundFunctions[t]),this.body.emitter.emit("_stopRendering"));this.boundFunctions={}}},{key:"_moveUp",value:function(){this.body.view.translation.y+=this.options.keyboard.speed.y}},{key:"_moveDown",value:function(){this.body.view.translation.y-=this.options.keyboard.speed.y}},{key:"_moveLeft",value:function(){this.body.view.translation.x+=this.options.keyboard.speed.x}},{key:"_moveRight",value:function(){this.body.view.translation.x-=this.options.keyboard.speed.x}},{key:"_zoomIn",value:function(){this.body.view.scale*=1+this.options.keyboard.speed.zoom,this.body.emitter.emit("zoom",{direction:"+",scale:this.body.view.scale})}},{key:"_zoomOut",value:function(){this.body.view.scale/=1+this.options.keyboard.speed.zoom,this.body.emitter.emit("zoom",{direction:"-",scale:this.body.view.scale})}},{key:"configureKeyboardBindings",value:function(){var t=this;void 0!==this.keycharm&&this.keycharm.destroy(),!0===this.options.keyboard.enabled&&(!0===this.options.keyboard.bindToWindow?this.keycharm=a({container:window,preventDefault:!0}):this.keycharm=a({container:this.canvas.frame,preventDefault:!0}),this.keycharm.reset(),!0===this.activated&&(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},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),r4&&void 0!==arguments[4]&&arguments[4],s=void 0;s=!0===n?{nodes:[],edges:[]}:this.getSelection(),s.pointer={DOM:{x:i.x,y:i.y},canvas:this.canvas.DOMtoCanvas(i)},s.event=e,void 0!==o&&(s.previousSelection=o),this.body.emitter.emit(t,s)}},{key:"selectObject",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.options.selectConnectedEdges;return void 0!==t&&(t instanceof a.default&&!0===e&&this._selectConnectedEdges(t),t.select(),this._addToSelection(t),!0)}},{key:"deselectObject",value:function(t){!0===t.isSelected()&&(t.selected=!1,this._removeFromSelection(t))}},{key:"_getAllNodesOverlappingWith",value:function(t){for(var e=[],i=this.body.nodes,o=0;o1&&void 0!==arguments[1])||arguments[1],i=this._pointerToPositionObject(t),o=this._getAllNodesOverlappingWith(i);return o.length>0?!0===e?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;o1&&void 0!==arguments[1])||arguments[1],i=this._pointerToPositionObject(t),o=this._getAllEdgesOverlappingWith(i);return o.length>0?!0===e?this.body.edges[o[o.length-1]]:o[o.length-1]:void 0}},{key:"_addToSelection",value:function(t){t instanceof a.default?this.selectionObj.nodes[t.id]=t:this.selectionObj.edges[t.id]=t}},{key:"_addToHover",value:function(t){t instanceof a.default?this.hoverObj.nodes[t.id]=t:this.hoverObj.edges[t.id]=t}},{key:"_removeFromSelection",value:function(t){t instanceof a.default?(delete this.selectionObj.nodes[t.id],this._unselectConnectedEdges(t)):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]}},{key:"_getSelectedEdge",value:function(){for(var t in this.selectionObj.edges)if(this.selectionObj.edges.hasOwnProperty(t))return this.selectionObj.edges[t]}},{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;e1&&void 0!==arguments[1]?arguments[1]:{},i=void 0,o=void 0;if(!t||!t.nodes&&!t.edges)throw"Selection must be an object with nodes and/or edges properties";if((e.unselectAll||void 0===e.unselectAll)&&this.unselectAll(),t.nodes)for(i=0;i1&&void 0!==arguments[1])||arguments[1];if(!t||void 0===t.length)throw"Selection must be an array with ids";this.setSelection({nodes:t},{highlightEdges:e})}},{key:"selectEdges",value:function(t){if(!t||void 0===t.length)throw"Selection must be an array with ids";this.setSelection({edges:t})}},{key:"updateSelection",value:function(){for(var t in this.selectionObj.nodes)this.selectionObj.nodes.hasOwnProperty(t)&&(this.body.nodes.hasOwnProperty(t)||delete this.selectionObj.nodes[t]);for(var e in this.selectionObj.edges)this.selectionObj.edges.hasOwnProperty(e)&&(this.body.edges.hasOwnProperty(e)||delete this.selectionObj.edges[e])}}]),t}();e.default=u},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(t){n=!0,s=t}finally{try{!o&&a.return&&a.return()}finally{if(n)throw s}}return i}return function(e,i){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},r=function(){function t(t,e){for(var i=0;i0&&(this.options.hierarchical.levelSeparation*=-1):this.options.hierarchical.levelSeparation<0&&(this.options.hierarchical.levelSeparation*=-1),this.body.emitter.emit("_resetHierarchicalLayout"),this.adaptAllOptionsForHierarchicalLayout(e);if(!0===i)return this.body.emitter.emit("refresh"),d.deepExtend(e,this.optionsBackup)}return e}},{key:"adaptAllOptionsForHierarchicalLayout",value:function(t){if(!0===this.options.hierarchical.enabled){void 0===t.physics||!0===t.physics?(t.physics={enabled:void 0===this.optionsBackup.physics.enabled||this.optionsBackup.physics.enabled,solver:"hierarchicalRepulsion"},this.optionsBackup.physics.enabled=void 0===this.optionsBackup.physics.enabled||this.optionsBackup.physics.enabled,this.optionsBackup.physics.solver=this.optionsBackup.physics.solver||"barnesHut"):"object"===s(t.physics)?(this.optionsBackup.physics.enabled=void 0===t.physics.enabled||t.physics.enabled,this.optionsBackup.physics.solver=t.physics.solver||"barnesHut",t.physics.solver="hierarchicalRepulsion"):!1!==t.physics&&(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||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,forceDirection:void 0!==t.edges.smooth.forceDirection&&t.edges.smooth.forceDirection},t.edges.smooth={enabled:void 0===t.edges.smooth.enabled||t.edges.smooth.enabled,type:e,roundness:void 0===t.edges.smooth.roundness?.5:t.edges.smooth.roundness,forceDirection:void 0!==t.edges.smooth.forceDirection&&t.edges.smooth.forceDirection}),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(!0!==this.options.hierarchical.enabled){this.randomSeed=this.initialRandomSeed;for(var e=0;e100){for(var n=this.body.nodeIndices.length;this.body.nodeIndices.length>100&&i<=10;){i+=1;var s=this.body.nodeIndices.length;i%3==0?this.body.modules.clustering.clusterBridges(o):this.body.modules.clustering.clusterOutliers(o);if(s==this.body.nodeIndices.length&&i%3!=0)return this._declusterAll(),this.body.emitter.emit("_layoutFailed"),void console.info("This network could not be positioned by this version of the improved layout algorithm. Please disable improvedLayout for better performance.")}this.body.modules.kamadaKawai.setOptions({springLength:Math.max(150,2*n)})}i>10&&console.info("The clustering didn't succeed within the amount of interations allowed, progressing with partial result."),this.body.modules.kamadaKawai.solve(this.body.nodeIndices,this.body.edgeIndices,!0),this._shiftToCenter();for(var r=0;r0){var t=void 0,e=void 0,i=!1,o=!1;this.hierarchicalLevels={},this.lastNodeOnLevel={},this.hierarchicalChildrenReference={},this.hierarchicalParentReference={},this.hierarchicalTrees={},this.treeIndex=-1,this.distributionOrdering={},this.distributionIndex={},this.distributionOrderingPresence={};for(e in this.body.nodes)this.body.nodes.hasOwnProperty(e)&&(t=this.body.nodes[e],void 0===t.options.x&&void 0===t.options.y&&!1,void 0!==t.options.level?(i=!0,this.hierarchicalLevels[e]=t.options.level):o=!0);if(!0===o&&!0===i)throw new Error("To use the hierarchical layout, nodes require either no predefined levels or levels have to be defined for all nodes.");!0===o&&("hubsize"===this.options.hierarchical.sortMethod?this._determineLevelsByHubsize():"directed"===this.options.hierarchical.sortMethod?this._determineLevelsDirected():"custom"===this.options.hierarchical.sortMethod&&this._determineLevelsCustomCallback());for(var n in this.body.nodes)this.body.nodes.hasOwnProperty(n)&&void 0===this.hierarchicalLevels[n]&&(this.hierarchicalLevels[n]=0);var s=this._getDistribution();this._generateMap(),this._placeNodesByHierarchy(s),this._condenseHierarchy(),this._shiftToCenter()}}},{key:"_condenseHierarchy",value:function(){var t=this,e=!1,i={},o=function(e,i){for(var o in t.hierarchicalTrees)if(t.hierarchicalTrees.hasOwnProperty(o)&&t.hierarchicalTrees[o]===e){var n=t.body.nodes[o],s=t._getPositionForHierarchy(n);t._setPositionForHierarchy(n,s+i,void 0,!0)}},s=function(e){var i=1e9,o=-1e9;for(var n in t.hierarchicalTrees)if(t.hierarchicalTrees.hasOwnProperty(n)&&t.hierarchicalTrees[n]===e){var s=t._getPositionForHierarchy(t.body.nodes[n]);i=Math.min(s,i),o=Math.max(s,o)}return{min:i,max:o}},r=function(){for(var e=[],i=0;i<=t.treeIndex;i++)e.push(s(i));return e},a=function e(i,o){if(!o[i.id]&&(o[i.id]=!0,t.hierarchicalChildrenReference[i.id])){var n=t.hierarchicalChildrenReference[i.id];if(n.length>0)for(var s=0;s1&&void 0!==arguments[1]?arguments[1]:1e9,o=1e9,s=1e9,r=1e9,a=-1e9;for(var h in e)if(e.hasOwnProperty(h)){var d=t.body.nodes[h],l=t.hierarchicalLevels[d.id],u=t._getPositionForHierarchy(d),c=t._getSpaceAroundNode(d,e),p=n(c,2),f=p[0],m=p[1];o=Math.min(f,o),s=Math.min(m,s),l<=i&&(r=Math.min(u,r),a=Math.max(u,a))}return[r,a,o,s]},d=function(e){var i={};return function e(o){if(void 0!==i[o])return i[o];var n=t.hierarchicalLevels[o];if(t.hierarchicalChildrenReference[o]){var s=t.hierarchicalChildrenReference[o];if(s.length>0)for(var r=0;r1)for(var a=0;a2&&void 0!==arguments[2]&&arguments[2],r=t._getPositionForHierarchy(i),d=t._getPositionForHierarchy(o);if(Math.abs(d-r)>t.options.hierarchical.nodeSpacing){var u={},c={};a(i,u),a(o,c);var p=l(i,o),f=h(u,p),m=n(f,4),v=(m[0],m[1]),y=(m[2],m[3],h(c,p)),g=n(y,4),b=g[0],_=(g[1],g[2]);if(g[3],Math.abs(v-b)>t.options.hierarchical.nodeSpacing){var w=v-b+t.options.hierarchical.nodeSpacing;w<-_+t.options.hierarchical.nodeSpacing&&(w=-_+t.options.hierarchical.nodeSpacing),w<0&&(t._shiftBlock(o.id,w),e=!0,!0===s&&t._centerParent(o))}}},f=function(o,s){for(var r=s.id,d=s.edges,l=t.hierarchicalLevels[s.id],u=t.options.hierarchical.levelSeparation*t.options.hierarchical.levelSeparation,c={},p=[],f=0;f0?m=Math.min(f,p-t.options.hierarchical.nodeSpacing):f<0&&(m=-Math.min(-f,c-t.options.hierarchical.nodeSpacing)),0!=m&&(t._shiftBlock(s.id,m),e=!0)}(_),_=b(o,d),function(i){var o=t._getPositionForHierarchy(s),r=t._getSpaceAroundNode(s),a=n(r,2),h=a[0],d=a[1],l=i-o,u=o;l>0?u=Math.min(o+(d-t.options.hierarchical.nodeSpacing),i):l<0&&(u=Math.max(o-(h-t.options.hierarchical.nodeSpacing),i)),u!==o&&(t._setPositionForHierarchy(s,u,void 0,!0),e=!0)}(_)};!0===this.options.hierarchical.blockShifting&&(function(i){var o=Object.keys(t.distributionOrdering);o=o.reverse();for(var n=0;n0)for(var d=0;d0&&Math.abs(y)0&&(r=this._getPositionForHierarchy(i[n-1])+this.options.hierarchical.nodeSpacing),this._setPositionForHierarchy(s,r,e),this._validataPositionAndContinue(s,e,r),o++}}}}},{key:"_placeBranchNodes",value:function(t,e){if(void 0!==this.hierarchicalChildrenReference[t]){for(var i=[],o=0;oe&&void 0===this.positionedNodes[s.id]))return;var a=void 0;a=0===n?this._getPositionForHierarchy(this.body.nodes[t]):this._getPositionForHierarchy(i[n-1])+this.options.hierarchical.nodeSpacing,this._setPositionForHierarchy(s,a,r),this._validataPositionAndContinue(s,r,a)}for(var h=1e9,d=-1e9,l=0;l0&&0!==(e=this._getHubSize());)for(var o in this.body.nodes)if(this.body.nodes.hasOwnProperty(o)){var n=this.body.nodes[o];n.edges.length===e&&this._crawlNetwork(i,o)}}},{ +key:"_determineLevelsCustomCallback",value:function(){var t=this,e=function(e,i,o){void 0===t.hierarchicalLevels[e.id]&&(t.hierarchicalLevels[e.id]=1e5);var n=(h.default.cloneOptions(e,"node"),h.default.cloneOptions(i,"node"),void h.default.cloneOptions(o,"edge"));t.hierarchicalLevels[i.id]=t.hierarchicalLevels[e.id]+n};this._crawlNetwork(e),this._setMinLevelToZero()}},{key:"_determineLevelsDirected",value:function(){var t=this,e=function(e,i,o){void 0===t.hierarchicalLevels[e.id]&&(t.hierarchicalLevels[e.id]=1e4),o.toId==i.id?t.hierarchicalLevels[i.id]=t.hierarchicalLevels[e.id]+1:t.hierarchicalLevels[i.id]=t.hierarchicalLevels[e.id]-1};this._crawlNetwork(e),this._setMinLevelToZero()}},{key:"_setMinLevelToZero",value:function(){var t=1e9;for(var e in this.body.nodes)this.body.nodes.hasOwnProperty(e)&&void 0!==this.hierarchicalLevels[e]&&(t=Math.min(this.hierarchicalLevels[e],t));for(var i in this.body.nodes)this.body.nodes.hasOwnProperty(i)&&void 0!==this.hierarchicalLevels[i]&&(this.hierarchicalLevels[i]-=t)}},{key:"_generateMap",value:function(){var t=this,e=function(e,i){if(t.hierarchicalLevels[i.id]>t.hierarchicalLevels[e.id]){var o=e.id,n=i.id;void 0===t.hierarchicalChildrenReference[o]&&(t.hierarchicalChildrenReference[o]=[]),t.hierarchicalChildrenReference[o].push(n),void 0===t.hierarchicalParentReference[n]&&(t.hierarchicalParentReference[n]=[]),t.hierarchicalParentReference[n].push(o)}};this._crawlNetwork(e)}},{key:"_crawlNetwork",value:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:function(){},i=arguments[1],o={},n=0,s=function i(n,s){if(void 0===o[n.id]){void 0===t.hierarchicalTrees[n.id]&&(t.hierarchicalTrees[n.id]=s,t.treeIndex=Math.max(s,t.treeIndex)),o[n.id]=!0;for(var r=void 0,a=0;a3&&void 0!==arguments[3]&&arguments[3])&&(void 0===this.distributionOrdering[i]&&(this.distributionOrdering[i]=[],this.distributionOrderingPresence[i]={}),void 0===this.distributionOrderingPresence[i][t.id]&&(this.distributionOrdering[i].push(t),this.distributionIndex[t.id]=this.distributionOrdering[i].length-1),this.distributionOrderingPresence[i][t.id]=!0),"UD"===this.options.hierarchical.direction||"DU"===this.options.hierarchical.direction?t.x=e:t.y=e}},{key:"_getPositionForHierarchy",value:function(t){return"UD"===this.options.hierarchical.direction||"DU"===this.options.hierarchical.direction?t.x:t.y}},{key:"_sortNodeArray",value:function(t){t.length>1&&("UD"===this.options.hierarchical.direction||"DU"===this.options.hierarchical.direction?t.sort(function(t,e){return t.x-e.x}):t.sort(function(t,e){return t.y-e.y}))}}]),t}();e.default=l},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&&!1!==this.options.deleteNode?(!0===n&&this._createSeperator(4),this._createDeleteButton(o)):0===t&&!1!==this.options.deleteEdge&&(!0===n&&this._createSeperator(4),this._createDeleteButton(o))),this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this)),this._temporaryBindEvent("select",this.showManipulatorToolbar.bind(this))}this.body.emitter.emit("_redraw")}},{key:"addNodeMode",value:function(){if(!0!==this.editMode&&this.enableEditMode(),this._clean(),this.inMode="addNode",!0===this.guiEnabled){var t=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(t),this._createSeperator(),this._createDescription(t.addDescription||this.options.locales.en.addDescription),this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this))}this._temporaryBindEvent("click",this._performAddNode.bind(this))}},{key:"editNode",value:function(){var t=this;!0!==this.editMode&&this.enableEditMode(),this._clean();var e=this.selectionHandler._getSelectedNode();if(void 0!==e){if(this.inMode="editNode","function"!=typeof this.options.editNode)throw new Error("No function has been configured to handle the editing of nodes.");if(!0!==e.isCluster){var i=s.deepExtend({},e.options,!1);if(i.x=e.x,i.y=e.y,2!==this.options.editNode.length)throw new Error("The function for edit does not support two arguments (data, callback)");this.options.editNode(i,function(e){null!==e&&void 0!==e&&"editNode"===t.inMode&&t.body.data.nodes.getDataSet().update(e),t.showManipulatorToolbar()})}else alert(this.options.locales[this.options.locale].editClusterError||this.options.locales.en.editClusterError)}else this.showManipulatorToolbar()}},{key:"addEdgeMode",value:function(){if(!0!==this.editMode&&this.enableEditMode(),this._clean(),this.inMode="addEdge",!0===this.guiEnabled){var t=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(t),this._createSeperator(),this._createDescription(t.edgeDescription||this.options.locales.en.edgeDescription),this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this))}this._temporaryBindUI("onTouch",this._handleConnect.bind(this)),this._temporaryBindUI("onDragEnd",this._finishConnect.bind(this)),this._temporaryBindUI("onDrag",this._dragControlNode.bind(this)),this._temporaryBindUI("onRelease",this._finishConnect.bind(this)),this._temporaryBindUI("onDragStart",function(){}),this._temporaryBindUI("onHold",function(){})}},{key:"editEdgeMode",value:function(){if(!0!==this.editMode&&this.enableEditMode(),this._clean(),this.inMode="editEdge",!0===this.guiEnabled){var t=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(t),this._createSeperator(),this._createDescription(t.editEdgeDescription||this.options.locales.en.editEdgeDescription),this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this))}if(this.edgeBeingEditedId=this.selectionHandler.getSelectedEdges()[0],void 0!==this.edgeBeingEditedId){var e=this.body.edges[this.edgeBeingEditedId],i=this._getNewTargetNode(e.from.x,e.from.y),o=this._getNewTargetNode(e.to.x,e.to.y);this.temporaryIds.nodes.push(i.id),this.temporaryIds.nodes.push(o.id),this.body.nodes[i.id]=i,this.body.nodeIndices.push(i.id),this.body.nodes[o.id]=o,this.body.nodeIndices.push(o.id),this._temporaryBindUI("onTouch",this._controlNodeTouch.bind(this)),this._temporaryBindUI("onTap",function(){}),this._temporaryBindUI("onHold",function(){}),this._temporaryBindUI("onDragStart",this._controlNodeDragStart.bind(this)),this._temporaryBindUI("onDrag",this._controlNodeDrag.bind(this)),this._temporaryBindUI("onDragEnd",this._controlNodeDragEnd.bind(this)),this._temporaryBindUI("onMouseMove",function(){}),this._temporaryBindEvent("beforeDrawing",function(t){var n=e.edgeType.findBorderPositions(t);!1===i.selected&&(i.x=n.from.x,i.y=n.from.y),!1===o.selected&&(o.x=n.to.x,o.y=n.to.y)}),this.body.emitter.emit("_redraw")}else this.showManipulatorToolbar()}},{key:"deleteSelected",value:function(){var t=this;!0!==this.editMode&&this.enableEditMode(),this._clean(),this.inMode="delete";var e=this.selectionHandler.getSelectedNodes(),i=this.selectionHandler.getSelectedEdges(),o=void 0;if(e.length>0){for(var n=0;n0&&"function"==typeof this.options.deleteEdge&&(o=this.options.deleteEdge);if("function"==typeof o){var s={nodes:e,edges:i};if(2!==o.length)throw new Error("The function for delete does not support two arguments (data, callback)");o(s,function(e){null!==e&&void 0!==e&&"delete"===t.inMode?(t.body.data.edges.getDataSet().remove(e.edges),t.body.data.nodes.getDataSet().remove(e.nodes),t.body.emitter.emit("startSimulation"),t.showManipulatorToolbar()):(t.body.emitter.emit("startSimulation"),t.showManipulatorToolbar())})}else this.body.data.edges.getDataSet().remove(i),this.body.data.nodes.getDataSet().remove(e),this.body.emitter.emit("startSimulation"),this.showManipulatorToolbar()}},{key:"_setup",value:function(){!0===this.options.enabled?(this.guiEnabled=!0,this._createWrappers(),!1===this.editMode?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",!0===this.editMode?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",!0===this.editMode?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);i.id="targetNode"+s.randomUUID(),i.hidden=!1,i.physics=!1,i.x=t,i.y=e;var o=this.body.functions.createNode(i);return o.shape.boundingBox={left:t,right:t,top:e,bottom:e},o}},{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,!0===this.guiEnabled&&(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;t0&&void 0!==arguments[0]?arguments[0]:1;this.manipulationDOM["seperatorLineDiv"+t]=document.createElement("div"),this.manipulationDOM["seperatorLineDiv"+t].className="vis-separator-line",this.manipulationDiv.appendChild(this.manipulationDOM["seperatorLineDiv"+t])}},{key:"_createAddNodeButton",value:function(t){var e=this._createButton("addNode","vis-button vis-add",t.addNode||this.options.locales.en.addNode);this.manipulationDiv.appendChild(e),this._bindHammerToDiv(e,this.addNodeMode.bind(this))}},{key:"_createAddEdgeButton",value:function(t){var e=this._createButton("addEdge","vis-button vis-connect",t.addEdge||this.options.locales.en.addEdge);this.manipulationDiv.appendChild(e),this._bindHammerToDiv(e,this.addEdgeMode.bind(this))}},{key:"_createEditNodeButton",value:function(t){var e=this._createButton("editNode","vis-button vis-edit",t.editNode||this.options.locales.en.editNode);this.manipulationDiv.appendChild(e),this._bindHammerToDiv(e,this.editNode.bind(this))}},{key:"_createEditEdgeButton",value:function(t){var e=this._createButton("editEdge","vis-button vis-edit",t.editEdge||this.options.locales.en.editEdge);this.manipulationDiv.appendChild(e),this._bindHammerToDiv(e,this.editEdgeMode.bind(this))}},{key:"_createDeleteButton",value:function(t){var e=this._createButton("delete","vis-button vis-delete",t.del||this.options.locales.en.del);this.manipulationDiv.appendChild(e),this._bindHammerToDiv(e,this.deleteSelected.bind(this))}},{key:"_createBackButton",value:function(t){var e=this._createButton("back","vis-button vis-back",t.back||this.options.locales.en.back);this.manipulationDiv.appendChild(e),this._bindHammerToDiv(e,this.showManipulatorToolbar.bind(this))}},{key:"_createButton",value:function(t,e,i){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"vis-label";return this.manipulationDOM[t+"Div"]=document.createElement("div"),this.manipulationDOM[t+"Div"].className=e,this.manipulationDOM[t+"Label"]=document.createElement("div"),this.manipulationDOM[t+"Label"].className=o,this.manipulationDOM[t+"Label"].innerHTML=i,this.manipulationDOM[t+"Div"].appendChild(this.manipulationDOM[t+"Label"]),this.manipulationDOM[t+"Div"]}},{key:"_createDescription",value:function(t){this.manipulationDiv.appendChild(this._createButton("description","vis-button vis-none",t))}},{key:"_temporaryBindEvent",value:function(t,e){this.temporaryEventFunctions.push({event:t,boundFunction:e}),this.body.emitter.on(t,e)}},{key:"_temporaryBindUI",value:function(t,e){if(void 0===this.body.eventListeners[t])throw new Error("This UI function does not exist. Typo? You tried: "+t+" possible are: "+JSON.stringify(Object.keys(this.body.eventListeners)));this.temporaryUIFunctions[t]=this.body.eventListeners[t],this.body.eventListeners[t]=e}},{key:"_unbindTemporaryUIs",value:function(){for(var t in this.temporaryUIFunctions)this.temporaryUIFunctions.hasOwnProperty(t)&&(this.body.eventListeners[t]=this.temporaryUIFunctions[t],delete this.temporaryUIFunctions[t]);this.temporaryUIFunctions={}}},{key:"_unbindTemporaryEvents",value:function(){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(!0===s.isCluster)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(!0===i.isCluster)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&&(!0===s.isCluster?alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError):void 0!==this.body.nodes[o]&&void 0!==this.body.nodes[s.id]&&this._performAddEdge(o,s.id)),this.body.emitter.emit("_redraw")}},{key:"_performAddNode",value:function(t){var e=this,i={id:s.randomUUID(),x:t.pointer.canvas.x,y:t.pointer.canvas.y,label:"new"};if("function"==typeof this.options.addNode){if(2!==this.options.addNode.length)throw new Error("The function for add does not support two arguments (data,callback)");this.options.addNode(i,function(t){null!==t&&void 0!==t&&"addNode"===e.inMode&&(e.body.data.nodes.getDataSet().add(t),e.showManipulatorToolbar())})}else this.body.data.nodes.getDataSet().add(i),this.showManipulatorToolbar()}},{key:"_performAddEdge",value:function(t,e){var i=this,o={from:t,to:e};if("function"==typeof this.options.addEdge){if(2!==this.options.addEdge.length)throw new Error("The function for connect does not support two arguments (data,callback)");this.options.addEdge(o,function(t){null!==t&&void 0!==t&&"addEdge"===i.inMode&&(i.body.data.edges.getDataSet().add(t),i.selectionHandler.unselectAll(),i.showManipulatorToolbar())})}else this.body.data.edges.getDataSet().add(o),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}},{key:"_performEditEdge",value:function(t,e){var i=this,o={id:this.edgeBeingEditedId,from:t,to:e};if("function"==typeof this.options.editEdge){if(2!==this.options.editEdge.length)throw new Error("The function for edit does not support two arguments (data, callback)");this.options.editEdge(o,function(t){null===t||void 0===t||"editEdge"!==i.inMode?(i.body.edges[o.id].updateEdgeType(),i.body.emitter.emit("_redraw")):(i.body.data.edges.getDataSet().update(t),i.selectionHandler.unselectAll(),i.showManipulatorToolbar())})}else this.body.data.edges.getDataSet().update(o),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}}]),t}();e.default=h},function(t,e){Object.defineProperty(e,"__esModule",{value:!0});var i="string",o="boolean",n="number",s="object",r={configure:{enabled:{boolean:o},filter:{boolean:o,string:i,array:"array",function:"function"},container:{dom:"dom"},showButton:{boolean:o},__type__:{object:s,boolean:o,string:i,array:"array",function:"function"}},edges:{arrows:{to:{enabled:{boolean:o},scaleFactor:{number:n},__type__:{object:s,boolean:o}},middle:{enabled:{boolean:o},scaleFactor:{number:n},__type__:{object:s,boolean:o}},from:{enabled:{boolean:o},scaleFactor:{number:n},__type__:{object:s,boolean:o}},__type__:{string:["from","to","middle"],object:s}},arrowStrikethrough:{boolean:o},color:{color:{string:i},highlight:{string:i},hover:{string:i},inherit:{string:["from","to","both"],boolean:o},opacity:{number:n},__type__:{object:s,string:i}},dashes:{boolean:o,array:"array"},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:s,string:i}},hidden:{boolean:o},hoverWidth:{function:"function",number:n},label:{string:i,undefined:"undefined"},labelHighlightBold:{boolean:o},length:{number:n,undefined:"undefined"},physics:{boolean:o},scaling:{min:{number:n},max:{number:n},label:{enabled:{boolean:o},min:{number:n},max:{number:n},maxVisible:{number:n},drawThreshold:{number:n},__type__:{object:s,boolean:o}},customScalingFunction:{function:"function"},__type__:{object:s}},selectionWidth:{function:"function",number:n},selfReferenceSize:{number:n},shadow:{enabled:{boolean:o},color:{string:i},size:{number:n},x:{number:n},y:{number:n},__type__:{object:s,boolean:o}},smooth:{enabled:{boolean:o},type:{string:["dynamic","continuous","discrete","diagonalCross","straightCross","horizontal","vertical","curvedCW","curvedCCW","cubicBezier"]},roundness:{number:n},forceDirection:{string:["horizontal","vertical","none"],boolean:o},__type__:{object:s,boolean:o}},title:{string:i,undefined:"undefined"},width:{number:n},value:{number:n,undefined:"undefined"},__type__:{object:s}},groups:{useDefaultGroups:{boolean:o},__any__:"get from nodes, will be overwritten below",__type__:{object:s}},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:s}},bindToWindow:{boolean:o},__type__:{object:s,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:s}},layout:{randomSeed:{undefined:"undefined",number:n},improvedLayout:{boolean:o},hierarchical:{enabled:{boolean:o},levelSeparation:{number:n},nodeSpacing:{number:n},treeSpacing:{number:n},blockShifting:{boolean:o},edgeMinimization:{boolean:o},parentCentralization:{boolean:o},direction:{string:["UD","DU","LR","RL"]},sortMethod:{string:["hubsize","directed"]},__type__:{object:s,boolean:o}},__type__:{object:s}},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:s,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:s,string:i}},hover:{border:{string:i},background:{string:i},__type__:{object:s,string:i}},__type__:{object:s,string:i}},fixed:{x:{boolean:o},y:{boolean:o},__type__:{object:s,boolean:o}},font:{color:{string:i},size:{number:n},face:{string:i},background:{string:i},strokeWidth:{number:n},strokeColor:{string:i},__type__:{object:s,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:s}},id:{string:i,number:n},image:{string:i,undefined:"undefined"},label:{string:i,undefined:"undefined"},labelHighlightBold:{boolean:o},level:{number:n,undefined:"undefined"},mass:{number:n},physics:{boolean:o},scaling:{min:{number:n},max:{number:n},label:{enabled:{boolean:o},min:{number:n},max:{number:n},maxVisible:{number:n},drawThreshold:{number:n},__type__:{object:s,boolean:o}},customScalingFunction:{function:"function"},__type__:{object:s}},shadow:{enabled:{boolean:o},color:{string:i},size:{number:n},x:{number:n},y:{number:n},__type__:{object:s,boolean:o}},shape:{string:["ellipse","circle","database","box","text","image","circularImage","diamond","dot","star","triangle","triangleDown","square","icon"]},shapeProperties:{borderDashes:{boolean:o,array:"array"},borderRadius:{number:n},interpolation:{boolean:o},useImageSize:{boolean:o},useBorderWithImage:{boolean:o},__type__:{object:s}},size:{number:n},title:{string:i,undefined:"undefined"},value:{number:n,undefined:"undefined"},x:{number:n},y:{number:n},__type__:{object:s}},physics:{enabled:{boolean:o},useWorker:{boolean:o},barnesHut:{gravitationalConstant:{number:n},centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},damping:{number:n},avoidOverlap:{number:n},__type__:{object:s}},forceAtlas2Based:{gravitationalConstant:{number:n},centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},damping:{number:n},avoidOverlap:{number:n},__type__:{object:s}},repulsion:{centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},nodeDistance:{number:n},damping:{number:n},__type__:{object:s}},hierarchicalRepulsion:{centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},nodeDistance:{number:n},damping:{number:n},__type__:{object:s}},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:s,boolean:o}},timestep:{number:n},adaptiveTimestep:{boolean:o},__type__:{object:s,boolean:o}},autoResize:{boolean:o},clickToUse:{boolean:o},locale:{string:i},locales:{__any__:{any:"any"},__type__:{object:s}},height:{string:i},width:{string:i},__type__:{object:s}};r.groups.__any__=r.nodes,r.manipulation.controlNodeStyle=r.nodes;var a={nodes:{borderWidth:[1,0,10,1],borderWidthSelected:[2,0,10,1],color:{border:["color","#2B7CE9"],background:["color","#97C2FC"],highlight:{border:["color","#2B7CE9"],background:["color","#D2E5FF"]},hover:{border:["color","#2B7CE9"],background:["color","#D2E5FF"]}},fixed:{x:!1,y:!1},font:{color:["color","#343434"],size:[14,0,100,1],face:["arial","verdana","tahoma"],background:["color","none"],strokeWidth:[0,0,50,1],strokeColor:["color","#ffffff"]},hidden:!1,labelHighlightBold:!0,physics:!0,scaling:{ +min:[10,0,200,1],max:[30,0,200,1],label:{enabled:!1,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},shadow:{enabled:!1,color:"rgba(0,0,0,0.5)",size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},shape:["ellipse","box","circle","database","diamond","dot","square","star","text","triangle","triangleDown"],shapeProperties:{borderDashes:!1,borderRadius:[6,0,20,1],interpolation:!0,useImageSize:!1},size:[25,0,200,1]},edges:{arrows:{to:{enabled:!1,scaleFactor:[1,0,3,.05]},middle:{enabled:!1,scaleFactor:[1,0,3,.05]},from:{enabled:!1,scaleFactor:[1,0,3,.05]}},arrowStrikethrough:!0,color:{color:["color","#848484"],highlight:["color","#848484"],hover:["color","#848484"],inherit:["from","to","both",!0,!1],opacity:[1,0,1,.05]},dashes:!1,font:{color:["color","#343434"],size:[14,0,100,1],face:["arial","verdana","tahoma"],background:["color","none"],strokeWidth:[2,0,50,1],strokeColor:["color","#ffffff"],align:["horizontal","top","middle","bottom"]},hidden:!1,hoverWidth:[1.5,0,5,.1],labelHighlightBold:!0,physics:!0,scaling:{min:[1,0,100,1],max:[15,0,100,1],label:{enabled:!0,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},selectionWidth:[1.5,0,5,.1],selfReferenceSize:[20,0,200,1],shadow:{enabled:!1,color:"rgba(0,0,0,0.5)",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","cubicBezier"],forceDirection:["horizontal","vertical","none"],roundness:[.5,0,1,.05]},width:[1,0,30,1]},layout:{hierarchical:{enabled:!1,levelSeparation:[150,20,500,5],nodeSpacing:[100,20,500,5],treeSpacing:[200,20,500,5],blockShifting:!0,edgeMinimization:!0,parentCentralization:!0,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=r,e.configureOptions=a},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(t){n=!0,s=t}finally{try{!o&&a.return&&a.return()}finally{if(n)throw s}}return i}return function(e,i){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),s=function(){function t(t,e){for(var i=0;i2&&void 0!==arguments[2]&&arguments[2],o=this.distanceSolver.getDistances(this.body,t,e);this._createL_matrix(o),this._createK_matrix(o),this._createE_matrix();for(var s=0,r=Math.max(1e3,Math.min(10*this.body.nodeIndices.length,6e3)),a=1e9,h=0,d=0,l=0,u=0,c=0;a>.01&&s1&&c<5;){c+=1,this._moveNode(h,d,l);var m=this._getEnergy(h),v=n(m,3);u=v[0],d=v[1],l=v[2]}}}},{key:"_getHighestEnergyNode",value:function(t){for(var e=this.body.nodeIndices,i=this.body.nodes,o=0,s=e[0],r=0,a=0,h=0;h=.1;)p=n[l++%s],p>d&&(p=d),c=Math.sqrt(p*p/(1+h*h)),c=r<0?-c:c,t+=c,e+=h*c,!0===u?this.lineTo(t,e):this.moveTo(t,e),d-=p,u=!u})},function(t,e){function i(t){return P=t,p()}function o(){N=0,I=P.charAt(0)}function n(){N++,I=P.charAt(N)}function s(){return P.charAt(N+1)}function r(t){return R.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;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=C.NULL,L="";" "===I||"\t"===I||"\n"===I||"\r"===I;)n();do{var t=!1;if("#"===I){for(var e=N-1;" "===P.charAt(e)||"\t"===P.charAt(e);)e--;if("\n"===P.charAt(e)||""===P.charAt(e)){for(;""!=I&&"\n"!=I;)n();t=!0}}if("/"===I&&"/"===s()){for(;""!=I&&"\n"!=I;)n();t=!0}if("/"===I&&"*"===s()){for(;""!=I;){if("*"===I&&"/"===s()){n(),n();break}n()}t=!0}for(;" "===I||"\t"===I||"\n"===I||"\r"===I;)n()}while(t);if(""===I)return void(A=C.DELIMITER);var i=I+s();if(T[i])return A=C.DELIMITER,L=i,n(),void n();if(T[I])return A=C.DELIMITER,L=I,void n();if(r(I)||"-"===I){for(L+=I,n();r(I);)L+=I,n();return"false"===L?L=!1:"true"===L?L=!0:isNaN(Number(L))||(L=Number(L)),void(A=C.IDENTIFIER)}if('"'===I){for(n();""!=I&&('"'!=I||'"'===I&&'"'===s());)L+=I,'"'===I&&n(),n();if('"'!=I)throw w('End of string " expected');return n(),void(A=C.IDENTIFIER)}for(A=C.UNKNOWN;""!=I;)L+=I,n();throw new SyntaxError('Syntax error in part "'+x(L,30)+'"')}function p(){var t={};if(o(),c(),"strict"===L&&(t.strict=!0,c()),"graph"!==L&&"digraph"!==L||(t.type=L,c()),A===C.IDENTIFIER&&(t.id=L,c()),"{"!=L)throw w("Angle bracket { expected");if(c(),f(t),"}"!=L)throw w("Angle bracket } expected");if(c(),""!==L)throw w("End of file expected");return c(),delete t.node,delete t.edge,delete t.graph,t}function f(t){for(;""!==L&&"}"!=L;)m(t),";"===L&&c()}function m(t){var e=v(t);if(e)return void b(t,e);if(!y(t)){if(A!=C.IDENTIFIER)throw w("Identifier expected");var i=L;if(c(),"="===L){if(c(),A!=C.IDENTIFIER)throw w("Identifier expected");t[i]=L,c()}else g(t,i)}}function v(t){var e=null;if("subgraph"===L&&(e={},e.type="subgraph",c(),A===C.IDENTIFIER&&(e.id=L,c())),"{"===L){if(c(),e||(e={}),e.parent=t,e.node=t.node,e.edge=t.edge,e.graph=t.graph,f(e),"}"!=L)throw w("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 y(t){return"node"===L?(c(),t.node=_(),"node"):"edge"===L?(c(),t.edge=_(),"edge"):"graph"===L?(c(),t.graph=_(),"graph"):null}function g(t,e){var i={id:e},o=_();o&&(i.attr=o),d(t,i),b(t,e)}function b(t,e){for(;"->"===L||"--"===L;){var i,o=L;c();var n=v(t);if(n)i=n;else{if(A!=C.IDENTIFIER)throw w("Identifier or subgraph expected");i=L,d(t,{id:i}),c()}l(t,u(t,e,i,o,_())),e=i}}function _(){for(var t=null;"["===L;){for(c(),t={};""!==L&&"]"!=L;){if(A!=C.IDENTIFIER)throw w("Attribute name expected");var e=L;if(c(),"="!=L)throw w("Equal sign = expected");if(c(),A!=C.IDENTIFIER)throw w("Attribute value expected");h(t,e,L),c(),","==L&&c()}if("]"!=L)throw w("Bracket ] expected");c()}return t}function w(t){return new SyntaxError(t+', got "'+x(L,30)+'" (char '+N+")")}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 O(t,e,i){for(var o=e.split("."),n=o.pop(),s=t,r=0;r":!0,"--":!0},P="",N=0,I="",L="",A=C.NULL,R=/[a-zA-Z_0-9.:#]/;e.parseDOT=i,e.DOTToGraph=S},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