diff --git a/.eslintrc b/.eslintrc index e8c63a682..263c7e5d8 100644 --- a/.eslintrc +++ b/.eslintrc @@ -23,7 +23,6 @@ globals: emojify: false SimpleMDE: false u2fApi: false - Vue: false rules: arrow-body-style: [0] diff --git a/package-lock.json b/package-lock.json index 3ca1b0629..cd2626b1d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10255,6 +10255,11 @@ "irregular-plurals": "^2.0.0" } }, + "popper.js": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz", + "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==" + }, "posix-character-classes": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", @@ -15033,6 +15038,16 @@ "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", "optional": true }, + "v-tooltip": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/v-tooltip/-/v-tooltip-2.0.3.tgz", + "integrity": "sha512-KZZY3s+dcijzZmV2qoDH4rYmjMZ9YKGBVoUznZKQX0e3c2GjpJm3Sldzz8HHH2Ud87JqhZPB4+4gyKZ6m98cKQ==", + "requires": { + "lodash": "^4.17.15", + "popper.js": "^1.16.0", + "vue-resize": "^0.4.5" + } + }, "v8-compile-cache": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz", @@ -15217,6 +15232,21 @@ "core-js": "^3.6.1", "gsap": "^3.0.4", "vue": "^2.6.11" + }, + "dependencies": { + "vue": { + "version": "2.6.11", + "resolved": "https://registry.npmjs.org/vue/-/vue-2.6.11.tgz", + "integrity": "sha512-VfPwgcGABbGAue9+sfrD4PuwFar7gPb1yl1UK1MwXoQPAw0BKSqWfoYCT/ThFrdEVWoI51dBuyCoiNU9bZDZxQ==" + } + } + }, + "vue-calendar-heatmap": { + "version": "0.8.4", + "resolved": "https://registry.npmjs.org/vue-calendar-heatmap/-/vue-calendar-heatmap-0.8.4.tgz", + "integrity": "sha512-Hx7OYBY1ghUIxKmFIIzpLT4XlcrwnI3WpadJEj/sKj5quoxwEuSDKmf94v0zWOHeQ/2CrB1G66geaKR/O56+OQ==", + "requires": { + "v-tooltip": "^2.0.0-rc.32" } }, "vue-hot-reload-api": { @@ -15238,6 +15268,11 @@ "vue-style-loader": "^4.1.0" } }, + "vue-resize": { + "version": "0.4.5", + "resolved": "https://registry.npmjs.org/vue-resize/-/vue-resize-0.4.5.tgz", + "integrity": "sha512-bhP7MlgJQ8TIkZJXAfDf78uJO+mEI3CaLABLjv0WNzr4CcGRGPIAItyWYnP6LsPA4Oq0WE+suidNs6dgpO4RHg==" + }, "vue-style-loader": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/vue-style-loader/-/vue-style-loader-4.1.2.tgz", diff --git a/package.json b/package.json index 7f30cb9c2..d5bf84023 100644 --- a/package.json +++ b/package.json @@ -13,7 +13,9 @@ "jquery-migrate": "3.1.0", "jquery.are-you-sure": "1.9.0", "swagger-ui": "3.25.0", - "vue-bar-graph": "1.2.0" + "vue": "2.6.11", + "vue-bar-graph": "1.2.0", + "vue-calendar-heatmap": "0.8.4" }, "devDependencies": { "@babel/core": "7.8.4", diff --git a/public/vendor/librejs.html b/public/vendor/librejs.html index 40a727327..20200b44b 100644 --- a/public/vendor/librejs.html +++ b/public/vendor/librejs.html @@ -51,9 +51,9 @@ gitgraph.js-latest - vue.min.js + vue Expat - vue.js-v2.6.6.tar.gz + vue.js-v2.6.11.tar.gz emojify.custom.js @@ -131,14 +131,9 @@ swagger-ui-v3.22.1.tar.gz - vue-calendar-heatmap + vue-calendar-heatmap MIT - 7f48b20.zip - - - moment.js - MIT - 0.4.1.tar.gz + master.zip diff --git a/public/vendor/plugins/moment/moment.min.js b/public/vendor/plugins/moment/moment.min.js deleted file mode 100644 index 580a6a2dc..000000000 --- a/public/vendor/plugins/moment/moment.min.js +++ /dev/null @@ -1 +0,0 @@ -!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):e.moment=t()}(this,function(){"use strict";var e,i;function c(){return e.apply(null,arguments)}function o(e){return e instanceof Array||"[object Array]"===Object.prototype.toString.call(e)}function u(e){return null!=e&&"[object Object]"===Object.prototype.toString.call(e)}function l(e){return void 0===e}function d(e){return"number"==typeof e||"[object Number]"===Object.prototype.toString.call(e)}function h(e){return e instanceof Date||"[object Date]"===Object.prototype.toString.call(e)}function f(e,t){var n,s=[];for(n=0;n>>0,s=0;sDe(e)?(r=e+1,a=o-De(e)):(r=e,a=o),{year:r,dayOfYear:a}}function Ie(e,t,n){var s,i,r=Ve(e.year(),t,n),a=Math.floor((e.dayOfYear()-r-1)/7)+1;return a<1?s=a+Ae(i=e.year()-1,t,n):a>Ae(e.year(),t,n)?(s=a-Ae(e.year(),t,n),i=e.year()+1):(i=e.year(),s=a),{week:s,year:i}}function Ae(e,t,n){var s=Ve(e,t,n),i=Ve(e+1,t,n);return(De(e)-s+i)/7}I("w",["ww",2],"wo","week"),I("W",["WW",2],"Wo","isoWeek"),H("week","w"),H("isoWeek","W"),L("week",5),L("isoWeek",5),ue("w",B),ue("ww",B,z),ue("W",B),ue("WW",B,z),fe(["w","ww","W","WW"],function(e,t,n,s){t[s.substr(0,1)]=k(e)});I("d",0,"do","day"),I("dd",0,0,function(e){return this.localeData().weekdaysMin(this,e)}),I("ddd",0,0,function(e){return this.localeData().weekdaysShort(this,e)}),I("dddd",0,0,function(e){return this.localeData().weekdays(this,e)}),I("e",0,0,"weekday"),I("E",0,0,"isoWeekday"),H("day","d"),H("weekday","e"),H("isoWeekday","E"),L("day",11),L("weekday",11),L("isoWeekday",11),ue("d",B),ue("e",B),ue("E",B),ue("dd",function(e,t){return t.weekdaysMinRegex(e)}),ue("ddd",function(e,t){return t.weekdaysShortRegex(e)}),ue("dddd",function(e,t){return t.weekdaysRegex(e)}),fe(["dd","ddd","dddd"],function(e,t,n,s){var i=n._locale.weekdaysParse(e,s,n._strict);null!=i?t.d=i:g(n).invalidWeekday=e}),fe(["d","e","E"],function(e,t,n,s){t[s]=k(e)});var je="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_");var Ze="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_");var ze="Su_Mo_Tu_We_Th_Fr_Sa".split("_");var $e=ae;var qe=ae;var Je=ae;function Be(){function e(e,t){return t.length-e.length}var t,n,s,i,r,a=[],o=[],u=[],l=[];for(t=0;t<7;t++)n=y([2e3,1]).day(t),s=this.weekdaysMin(n,""),i=this.weekdaysShort(n,""),r=this.weekdays(n,""),a.push(s),o.push(i),u.push(r),l.push(s),l.push(i),l.push(r);for(a.sort(e),o.sort(e),u.sort(e),l.sort(e),t=0;t<7;t++)o[t]=de(o[t]),u[t]=de(u[t]),l[t]=de(l[t]);this._weekdaysRegex=new RegExp("^("+l.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+u.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+o.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+a.join("|")+")","i")}function Qe(){return this.hours()%12||12}function Xe(e,t){I(e,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)})}function Ke(e,t){return t._meridiemParse}I("H",["HH",2],0,"hour"),I("h",["hh",2],0,Qe),I("k",["kk",2],0,function(){return this.hours()||24}),I("hmm",0,0,function(){return""+Qe.apply(this)+U(this.minutes(),2)}),I("hmmss",0,0,function(){return""+Qe.apply(this)+U(this.minutes(),2)+U(this.seconds(),2)}),I("Hmm",0,0,function(){return""+this.hours()+U(this.minutes(),2)}),I("Hmmss",0,0,function(){return""+this.hours()+U(this.minutes(),2)+U(this.seconds(),2)}),Xe("a",!0),Xe("A",!1),H("hour","h"),L("hour",13),ue("a",Ke),ue("A",Ke),ue("H",B),ue("h",B),ue("k",B),ue("HH",B,z),ue("hh",B,z),ue("kk",B,z),ue("hmm",Q),ue("hmmss",X),ue("Hmm",Q),ue("Hmmss",X),ce(["H","HH"],ge),ce(["k","kk"],function(e,t,n){var s=k(e);t[ge]=24===s?0:s}),ce(["a","A"],function(e,t,n){n._isPm=n._locale.isPM(e),n._meridiem=e}),ce(["h","hh"],function(e,t,n){t[ge]=k(e),g(n).bigHour=!0}),ce("hmm",function(e,t,n){var s=e.length-2;t[ge]=k(e.substr(0,s)),t[pe]=k(e.substr(s)),g(n).bigHour=!0}),ce("hmmss",function(e,t,n){var s=e.length-4,i=e.length-2;t[ge]=k(e.substr(0,s)),t[pe]=k(e.substr(s,2)),t[ve]=k(e.substr(i)),g(n).bigHour=!0}),ce("Hmm",function(e,t,n){var s=e.length-2;t[ge]=k(e.substr(0,s)),t[pe]=k(e.substr(s))}),ce("Hmmss",function(e,t,n){var s=e.length-4,i=e.length-2;t[ge]=k(e.substr(0,s)),t[pe]=k(e.substr(s,2)),t[ve]=k(e.substr(i))});var et,tt=Te("Hours",!0),nt={calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},longDateFormat:{LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},months:He,monthsShort:Re,week:{dow:0,doy:6},weekdays:je,weekdaysMin:ze,weekdaysShort:Ze,meridiemParse:/[ap]\.?m?\.?/i},st={},it={};function rt(e){return e?e.toLowerCase().replace("_","-"):e}function at(e){var t=null;if(!st[e]&&"undefined"!=typeof module&&module&&module.exports)try{t=et._abbr,require("./locale/"+e),ot(t)}catch(e){}return st[e]}function ot(e,t){var n;return e&&((n=l(t)?lt(e):ut(e,t))?et=n:"undefined"!=typeof console&&console.warn&&console.warn("Locale "+e+" not found. Did you forget to load it?")),et._abbr}function ut(e,t){if(null!==t){var n,s=nt;if(t.abbr=e,null!=st[e])T("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."),s=st[e]._config;else if(null!=t.parentLocale)if(null!=st[t.parentLocale])s=st[t.parentLocale]._config;else{if(null==(n=at(t.parentLocale)))return it[t.parentLocale]||(it[t.parentLocale]=[]),it[t.parentLocale].push({name:e,config:t}),null;s=n._config}return st[e]=new P(b(s,t)),it[e]&&it[e].forEach(function(e){ut(e.name,e.config)}),ot(e),st[e]}return delete st[e],null}function lt(e){var t;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return et;if(!o(e)){if(t=at(e))return t;e=[e]}return function(e){for(var t,n,s,i,r=0;r=t&&a(i,n,!0)>=t-1)break;t--}r++}return et}(e)}function dt(e){var t,n=e._a;return n&&-2===g(e).overflow&&(t=n[_e]<0||11Pe(n[me],n[_e])?ye:n[ge]<0||24Ae(n,r,a)?g(e)._overflowWeeks=!0:null!=u?g(e)._overflowWeekday=!0:(o=Ee(n,s,i,r,a),e._a[me]=o.year,e._dayOfYear=o.dayOfYear)}(e),null!=e._dayOfYear&&(r=ht(e._a[me],s[me]),(e._dayOfYear>De(r)||0===e._dayOfYear)&&(g(e)._overflowDayOfYear=!0),n=Ge(r,0,e._dayOfYear),e._a[_e]=n.getUTCMonth(),e._a[ye]=n.getUTCDate()),t=0;t<3&&null==e._a[t];++t)e._a[t]=a[t]=s[t];for(;t<7;t++)e._a[t]=a[t]=null==e._a[t]?2===t?1:0:e._a[t];24===e._a[ge]&&0===e._a[pe]&&0===e._a[ve]&&0===e._a[we]&&(e._nextDay=!0,e._a[ge]=0),e._d=(e._useUTC?Ge:function(e,t,n,s,i,r,a){var o=new Date(e,t,n,s,i,r,a);return e<100&&0<=e&&isFinite(o.getFullYear())&&o.setFullYear(e),o}).apply(null,a),i=e._useUTC?e._d.getUTCDay():e._d.getDay(),null!=e._tzm&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[ge]=24),e._w&&void 0!==e._w.d&&e._w.d!==i&&(g(e).weekdayMismatch=!0)}}var ft=/^\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)?)?$/,mt=/^\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)?)?$/,_t=/Z|[+-]\d\d(?::?\d\d)?/,yt=[["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}/]],gt=[["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/]],pt=/^\/?Date\((\-?\d+)/i;function vt(e){var t,n,s,i,r,a,o=e._i,u=ft.exec(o)||mt.exec(o);if(u){for(g(e).iso=!0,t=0,n=yt.length;tn.valueOf():n.valueOf()this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()},ln.isLocal=function(){return!!this.isValid()&&!this._isUTC},ln.isUtcOffset=function(){return!!this.isValid()&&this._isUTC},ln.isUtc=Vt,ln.isUTC=Vt,ln.zoneAbbr=function(){return this._isUTC?"UTC":""},ln.zoneName=function(){return this._isUTC?"Coordinated Universal Time":""},ln.dates=n("dates accessor is deprecated. Use date instead.",nn),ln.months=n("months accessor is deprecated. Use month instead",Fe),ln.years=n("years accessor is deprecated. Use year instead",Oe),ln.zone=n("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",function(e,t){return null!=e?("string"!=typeof e&&(e=-e),this.utcOffset(e,t),this):-this.utcOffset()}),ln.isDSTShifted=n("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",function(){if(!l(this._isDSTShifted))return this._isDSTShifted;var e={};if(w(e,this),(e=Yt(e))._a){var t=e._isUTC?y(e._a):Tt(e._a);this._isDSTShifted=this.isValid()&&0=this.max?5:Math.ceil(100*value/this.max*.03)+1}},{key:"getCountEmptyDaysAtStart",value:function(){return this.startDate.getDay()}},{key:"getCountEmptyDaysAtEnd",value:function(){return __WEBPACK_IMPORTED_MODULE_0__consts__.c-1-this.endDate.getDay()}},{key:"getDaysCount",value:function(){return __WEBPACK_IMPORTED_MODULE_0__consts__.f+1+this.getCountEmptyDaysAtStart()+this.getCountEmptyDaysAtEnd()}},{key:"_shiftDate",value:function(date,numDays){var newDate=new Date(date);return newDate.setDate(newDate.getDate()+numDays),newDate}},{key:"_parseDate",value:function(entry){return entry instanceof Date?entry:new Date(entry)}},{key:"_keyDayParser",value:function(date){var day=this._parseDate(date);return day.getFullYear()+"-"+day.getMonth()+"-"+day.getDate()}},{key:"activities",get:function(){var _this=this;return this.values.reduce(function(newValues,day){return newValues[_this._keyDayParser(day.date)]={count:day.count,colorIndex:_this.getColorIndex(day.count)},newValues},{})}},{key:"weekCount",get:function(){return this.getDaysCount()/__WEBPACK_IMPORTED_MODULE_0__consts__.c}},{key:"calendar",get:function(){var _this2=this,date=this._shiftDate(this.startDate,-this.getCountEmptyDaysAtStart());return Array.from({length:this.weekCount},function(){return Array.from({length:__WEBPACK_IMPORTED_MODULE_0__consts__.c},function(){var dDate=new Date(date.getFullYear(),date.getMonth(),date.getDate()),dayValues=_this2.activities[_this2._keyDayParser(dDate)];return date.setDate(date.getDate()+1),{date:dDate,count:dayValues?dayValues.count:null,colorIndex:dayValues?dayValues.colorIndex:0}})})}},{key:"firstFullWeekOfMonths",get:function(){return this.calendar.reduce(function(months,week,index,weeks){if(index>0){var lastWeek=weeks[index-1][0].date,currentWeek=week[0].date;(lastWeek.getFullYear()1&&void 0!==arguments[1]?arguments[1]:"top",upperSide="top"===side?"scrollTop":"scrollLeft",nodeName=element.nodeName;if("BODY"===nodeName||"HTML"===nodeName){var html=element.ownerDocument.documentElement;return(element.ownerDocument.scrollingElement||html)[upperSide]}return element[upperSide]}function includeScroll(rect,element){var subtract=arguments.length>2&&void 0!==arguments[2]&&arguments[2],scrollTop=getScroll(element,"top"),scrollLeft=getScroll(element,"left"),modifier=subtract?-1:1;return rect.top+=scrollTop*modifier,rect.bottom+=scrollTop*modifier,rect.left+=scrollLeft*modifier,rect.right+=scrollLeft*modifier,rect}function getBordersSize(styles,axis){var sideA="x"===axis?"Left":"Top",sideB="Left"===sideA?"Right":"Bottom";return parseFloat(styles["border"+sideA+"Width"],10)+parseFloat(styles["border"+sideB+"Width"],10)}function getSize(axis,body,html,computedStyle){return Math.max(body["offset"+axis],body["scroll"+axis],html["client"+axis],html["offset"+axis],html["scroll"+axis],isIE(10)?html["offset"+axis]+computedStyle["margin"+("Height"===axis?"Top":"Left")]+computedStyle["margin"+("Height"===axis?"Bottom":"Right")]:0)}function getWindowSizes(){var body=document.body,html=document.documentElement,computedStyle=isIE(10)&&getComputedStyle(html);return{height:getSize("Height",body,html,computedStyle),width:getSize("Width",body,html,computedStyle)}}function getClientRect(offsets){return _extends({},offsets,{right:offsets.left+offsets.width,bottom:offsets.top+offsets.height})}function getBoundingClientRect(element){var rect={};try{if(isIE(10)){rect=element.getBoundingClientRect();var scrollTop=getScroll(element,"top"),scrollLeft=getScroll(element,"left");rect.top+=scrollTop,rect.left+=scrollLeft,rect.bottom+=scrollTop,rect.right+=scrollLeft}else rect=element.getBoundingClientRect()}catch(e){}var result={left:rect.left,top:rect.top,width:rect.right-rect.left,height:rect.bottom-rect.top},sizes="HTML"===element.nodeName?getWindowSizes():{},width=sizes.width||element.clientWidth||result.right-result.left,height=sizes.height||element.clientHeight||result.bottom-result.top,horizScrollbar=element.offsetWidth-width,vertScrollbar=element.offsetHeight-height;if(horizScrollbar||vertScrollbar){var styles=getStyleComputedProperty(element);horizScrollbar-=getBordersSize(styles,"x"),vertScrollbar-=getBordersSize(styles,"y"),result.width-=horizScrollbar,result.height-=vertScrollbar}return getClientRect(result)}function getOffsetRectRelativeToArbitraryNode(children,parent){var fixedPosition=arguments.length>2&&void 0!==arguments[2]&&arguments[2],isIE10=isIE(10),isHTML="HTML"===parent.nodeName,childrenRect=getBoundingClientRect(children),parentRect=getBoundingClientRect(parent),scrollParent=getScrollParent(children),styles=getStyleComputedProperty(parent),borderTopWidth=parseFloat(styles.borderTopWidth,10),borderLeftWidth=parseFloat(styles.borderLeftWidth,10);fixedPosition&&"HTML"===parent.nodeName&&(parentRect.top=Math.max(parentRect.top,0),parentRect.left=Math.max(parentRect.left,0));var offsets=getClientRect({top:childrenRect.top-parentRect.top-borderTopWidth,left:childrenRect.left-parentRect.left-borderLeftWidth,width:childrenRect.width,height:childrenRect.height});if(offsets.marginTop=0,offsets.marginLeft=0,!isIE10&&isHTML){var marginTop=parseFloat(styles.marginTop,10),marginLeft=parseFloat(styles.marginLeft,10);offsets.top-=borderTopWidth-marginTop,offsets.bottom-=borderTopWidth-marginTop,offsets.left-=borderLeftWidth-marginLeft,offsets.right-=borderLeftWidth-marginLeft,offsets.marginTop=marginTop,offsets.marginLeft=marginLeft}return(isIE10&&!fixedPosition?parent.contains(scrollParent):parent===scrollParent&&"BODY"!==scrollParent.nodeName)&&(offsets=includeScroll(offsets,parent)),offsets}function getViewportOffsetRectRelativeToArtbitraryNode(element){var excludeScroll=arguments.length>1&&void 0!==arguments[1]&&arguments[1],html=element.ownerDocument.documentElement,relativeOffset=getOffsetRectRelativeToArbitraryNode(element,html),width=Math.max(html.clientWidth,window.innerWidth||0),height=Math.max(html.clientHeight,window.innerHeight||0),scrollTop=excludeScroll?0:getScroll(html),scrollLeft=excludeScroll?0:getScroll(html,"left");return getClientRect({top:scrollTop-relativeOffset.top+relativeOffset.marginTop,left:scrollLeft-relativeOffset.left+relativeOffset.marginLeft,width:width,height:height})}function isFixed(element){var nodeName=element.nodeName;return"BODY"!==nodeName&&"HTML"!==nodeName&&("fixed"===getStyleComputedProperty(element,"position")||isFixed(getParentNode(element)))}function getFixedPositionOffsetParent(element){if(!element||!element.parentElement||isIE())return document.documentElement;for(var el=element.parentElement;el&&"none"===getStyleComputedProperty(el,"transform");)el=el.parentElement;return el||document.documentElement}function getBoundaries(popper,reference,padding,boundariesElement){var fixedPosition=arguments.length>4&&void 0!==arguments[4]&&arguments[4],boundaries={top:0,left:0},offsetParent=fixedPosition?getFixedPositionOffsetParent(popper):findCommonOffsetParent(popper,reference);if("viewport"===boundariesElement)boundaries=getViewportOffsetRectRelativeToArtbitraryNode(offsetParent,fixedPosition);else{var boundariesNode=void 0;"scrollParent"===boundariesElement?(boundariesNode=getScrollParent(getParentNode(reference)),"BODY"===boundariesNode.nodeName&&(boundariesNode=popper.ownerDocument.documentElement)):boundariesNode="window"===boundariesElement?popper.ownerDocument.documentElement:boundariesElement;var offsets=getOffsetRectRelativeToArbitraryNode(boundariesNode,offsetParent,fixedPosition);if("HTML"!==boundariesNode.nodeName||isFixed(offsetParent))boundaries=offsets;else{var _getWindowSizes=getWindowSizes(),height=_getWindowSizes.height,width=_getWindowSizes.width;boundaries.top+=offsets.top-offsets.marginTop,boundaries.bottom=height+offsets.top,boundaries.left+=offsets.left-offsets.marginLeft,boundaries.right=width+offsets.left}}return boundaries.left+=padding,boundaries.top+=padding,boundaries.right-=padding,boundaries.bottom-=padding,boundaries}function getArea(_ref){return _ref.width*_ref.height}function computeAutoPlacement(placement,refRect,popper,reference,boundariesElement){var padding=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0;if(-1===placement.indexOf("auto"))return placement;var boundaries=getBoundaries(popper,reference,padding,boundariesElement),rects={top:{width:boundaries.width,height:refRect.top-boundaries.top},right:{width:boundaries.right-refRect.right,height:boundaries.height},bottom:{width:boundaries.width,height:boundaries.bottom-refRect.bottom},left:{width:refRect.left-boundaries.left,height:boundaries.height}},sortedAreas=Object.keys(rects).map(function(key){return _extends({key:key},rects[key],{area:getArea(rects[key])})}).sort(function(a,b){return b.area-a.area}),filteredAreas=sortedAreas.filter(function(_ref2){var width=_ref2.width,height=_ref2.height;return width>=popper.clientWidth&&height>=popper.clientHeight}),computedPlacement=filteredAreas.length>0?filteredAreas[0].key:sortedAreas[0].key,variation=placement.split("-")[1];return computedPlacement+(variation?"-"+variation:"")}function getReferenceOffsets(state,popper,reference){var fixedPosition=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;return getOffsetRectRelativeToArbitraryNode(reference,fixedPosition?getFixedPositionOffsetParent(popper):findCommonOffsetParent(popper,reference),fixedPosition)}function getOuterSizes(element){var styles=getComputedStyle(element),x=parseFloat(styles.marginTop)+parseFloat(styles.marginBottom),y=parseFloat(styles.marginLeft)+parseFloat(styles.marginRight);return{width:element.offsetWidth+y,height:element.offsetHeight+x}}function getOppositePlacement(placement){var hash={left:"right",right:"left",bottom:"top",top:"bottom"};return placement.replace(/left|right|bottom|top/g,function(matched){return hash[matched]})}function getPopperOffsets(popper,referenceOffsets,placement){placement=placement.split("-")[0];var popperRect=getOuterSizes(popper),popperOffsets={width:popperRect.width,height:popperRect.height},isHoriz=-1!==["right","left"].indexOf(placement),mainSide=isHoriz?"top":"left",secondarySide=isHoriz?"left":"top",measurement=isHoriz?"height":"width",secondaryMeasurement=isHoriz?"width":"height";return popperOffsets[mainSide]=referenceOffsets[mainSide]+referenceOffsets[measurement]/2-popperRect[measurement]/2,popperOffsets[secondarySide]=placement===secondarySide?referenceOffsets[secondarySide]-popperRect[secondaryMeasurement]:referenceOffsets[getOppositePlacement(secondarySide)],popperOffsets}function find(arr,check){return Array.prototype.find?arr.find(check):arr.filter(check)[0]}function findIndex(arr,prop,value){if(Array.prototype.findIndex)return arr.findIndex(function(cur){return cur[prop]===value});var match=find(arr,function(obj){return obj[prop]===value});return arr.indexOf(match)}function runModifiers(modifiers,data,ends){return(void 0===ends?modifiers:modifiers.slice(0,findIndex(modifiers,"name",ends))).forEach(function(modifier){modifier.function&&console.warn("`modifier.function` is deprecated, use `modifier.fn`!");var fn=modifier.function||modifier.fn;modifier.enabled&&isFunction(fn)&&(data.offsets.popper=getClientRect(data.offsets.popper),data.offsets.reference=getClientRect(data.offsets.reference),data=fn(data,modifier))}),data}function update(){if(!this.state.isDestroyed){var data={instance:this,styles:{},arrowStyles:{},attributes:{},flipped:!1,offsets:{}};data.offsets.reference=getReferenceOffsets(this.state,this.popper,this.reference,this.options.positionFixed),data.placement=computeAutoPlacement(this.options.placement,data.offsets.reference,this.popper,this.reference,this.options.modifiers.flip.boundariesElement,this.options.modifiers.flip.padding),data.originalPlacement=data.placement,data.positionFixed=this.options.positionFixed,data.offsets.popper=getPopperOffsets(this.popper,data.offsets.reference,data.placement),data.offsets.popper.position=this.options.positionFixed?"fixed":"absolute",data=runModifiers(this.modifiers,data),this.state.isCreated?this.options.onUpdate(data):(this.state.isCreated=!0,this.options.onCreate(data))}}function isModifierEnabled(modifiers,modifierName){return modifiers.some(function(_ref){var name=_ref.name;return _ref.enabled&&name===modifierName})}function getSupportedPropertyName(property){for(var prefixes=[!1,"ms","Webkit","Moz","O"],upperProp=property.charAt(0).toUpperCase()+property.slice(1),i=0;ipopper[opSide]&&(data.offsets.popper[side]+=reference[side]+arrowElementSize-popper[opSide]),data.offsets.popper=getClientRect(data.offsets.popper);var center=reference[side]+reference[len]/2-arrowElementSize/2,css=getStyleComputedProperty(data.instance.popper),popperMarginSide=parseFloat(css["margin"+sideCapitalized],10),popperBorderSide=parseFloat(css["border"+sideCapitalized+"Width"],10),sideValue=center-data.offsets.popper[side]-popperMarginSide-popperBorderSide;return sideValue=Math.max(Math.min(popper[len]-arrowElementSize,sideValue),0),data.arrowElement=arrowElement,data.offsets.arrow=(_data$offsets$arrow={},defineProperty(_data$offsets$arrow,side,Math.round(sideValue)),defineProperty(_data$offsets$arrow,altSide,""),_data$offsets$arrow),data}function getOppositeVariation(variation){return"end"===variation?"start":"start"===variation?"end":variation}function clockwise(placement){var counter=arguments.length>1&&void 0!==arguments[1]&&arguments[1],index=validPlacements.indexOf(placement),arr=validPlacements.slice(index+1).concat(validPlacements.slice(0,index));return counter?arr.reverse():arr}function flip(data,options){if(isModifierEnabled(data.instance.modifiers,"inner"))return data;if(data.flipped&&data.placement===data.originalPlacement)return data;var boundaries=getBoundaries(data.instance.popper,data.instance.reference,options.padding,options.boundariesElement,data.positionFixed),placement=data.placement.split("-")[0],placementOpposite=getOppositePlacement(placement),variation=data.placement.split("-")[1]||"",flipOrder=[];switch(options.behavior){case BEHAVIORS.FLIP:flipOrder=[placement,placementOpposite];break;case BEHAVIORS.CLOCKWISE:flipOrder=clockwise(placement);break;case BEHAVIORS.COUNTERCLOCKWISE:flipOrder=clockwise(placement,!0);break;default:flipOrder=options.behavior}return flipOrder.forEach(function(step,index){if(placement!==step||flipOrder.length===index+1)return data;placement=data.placement.split("-")[0],placementOpposite=getOppositePlacement(placement);var popperOffsets=data.offsets.popper,refOffsets=data.offsets.reference,floor=Math.floor,overlapsRef="left"===placement&&floor(popperOffsets.right)>floor(refOffsets.left)||"right"===placement&&floor(popperOffsets.left)floor(refOffsets.top)||"bottom"===placement&&floor(popperOffsets.top)floor(boundaries.right),overflowsTop=floor(popperOffsets.top)floor(boundaries.bottom),overflowsBoundaries="left"===placement&&overflowsLeft||"right"===placement&&overflowsRight||"top"===placement&&overflowsTop||"bottom"===placement&&overflowsBottom,isVertical=-1!==["top","bottom"].indexOf(placement),flippedVariation=!!options.flipVariations&&(isVertical&&"start"===variation&&overflowsLeft||isVertical&&"end"===variation&&overflowsRight||!isVertical&&"start"===variation&&overflowsTop||!isVertical&&"end"===variation&&overflowsBottom);(overlapsRef||overflowsBoundaries||flippedVariation)&&(data.flipped=!0,(overlapsRef||overflowsBoundaries)&&(placement=flipOrder[index+1]),flippedVariation&&(variation=getOppositeVariation(variation)),data.placement=placement+(variation?"-"+variation:""),data.offsets.popper=_extends({},data.offsets.popper,getPopperOffsets(data.instance.popper,data.offsets.reference,data.placement)),data=runModifiers(data.instance.modifiers,data,"flip"))}),data}function keepTogether(data){var _data$offsets=data.offsets,popper=_data$offsets.popper,reference=_data$offsets.reference,placement=data.placement.split("-")[0],floor=Math.floor,isVertical=-1!==["top","bottom"].indexOf(placement),side=isVertical?"right":"bottom",opSide=isVertical?"left":"top",measurement=isVertical?"width":"height";return popper[side]floor(reference[side])&&(data.offsets.popper[opSide]=floor(reference[side])),data}function toValue(str,measurement,popperOffsets,referenceOffsets){var split=str.match(/((?:\-|\+)?\d*\.?\d*)(.*)/),value=+split[1],unit=split[2];if(!value)return str;if(0===unit.indexOf("%")){var element=void 0;switch(unit){case"%p":element=popperOffsets;break;case"%":case"%r":default:element=referenceOffsets}return getClientRect(element)[measurement]/100*value}if("vh"===unit||"vw"===unit){return("vh"===unit?Math.max(document.documentElement.clientHeight,window.innerHeight||0):Math.max(document.documentElement.clientWidth,window.innerWidth||0))/100*value}return value}function parseOffset(offset,popperOffsets,referenceOffsets,basePlacement){var offsets=[0,0],useHeight=-1!==["right","left"].indexOf(basePlacement),fragments=offset.split(/(\+|\-)/).map(function(frag){return frag.trim()}),divider=fragments.indexOf(find(fragments,function(frag){return-1!==frag.search(/,|\s/)}));fragments[divider]&&-1===fragments[divider].indexOf(",")&&console.warn("Offsets separated by white space(s) are deprecated, use a comma (,) instead.");var splitRegex=/\s*,\s*|\s+/,ops=-1!==divider?[fragments.slice(0,divider).concat([fragments[divider].split(splitRegex)[0]]),[fragments[divider].split(splitRegex)[1]].concat(fragments.slice(divider+1))]:[fragments];return ops=ops.map(function(op,index){var measurement=(1===index?!useHeight:useHeight)?"height":"width",mergeWithPrevious=!1;return op.reduce(function(a,b){return""===a[a.length-1]&&-1!==["+","-"].indexOf(b)?(a[a.length-1]=b,mergeWithPrevious=!0,a):mergeWithPrevious?(a[a.length-1]+=b,mergeWithPrevious=!1,a):a.concat(b)},[]).map(function(str){return toValue(str,measurement,popperOffsets,referenceOffsets)})}),ops.forEach(function(op,index){op.forEach(function(frag,index2){isNumeric(frag)&&(offsets[index]+=frag*("-"===op[index2-1]?-1:1))})}),offsets}function offset(data,_ref){var offset=_ref.offset,placement=data.placement,_data$offsets=data.offsets,popper=_data$offsets.popper,reference=_data$offsets.reference,basePlacement=placement.split("-")[0],offsets=void 0;return offsets=isNumeric(+offset)?[+offset,0]:parseOffset(offset,popper,reference,basePlacement),"left"===basePlacement?(popper.top+=offsets[0],popper.left-=offsets[1]):"right"===basePlacement?(popper.top+=offsets[0],popper.left+=offsets[1]):"top"===basePlacement?(popper.left+=offsets[0],popper.top-=offsets[1]):"bottom"===basePlacement&&(popper.left+=offsets[0],popper.top+=offsets[1]),data.popper=popper,data}function preventOverflow(data,options){var boundariesElement=options.boundariesElement||getOffsetParent(data.instance.popper);data.instance.reference===boundariesElement&&(boundariesElement=getOffsetParent(boundariesElement));var transformProp=getSupportedPropertyName("transform"),popperStyles=data.instance.popper.style,top=popperStyles.top,left=popperStyles.left,transform=popperStyles[transformProp];popperStyles.top="",popperStyles.left="",popperStyles[transformProp]="";var boundaries=getBoundaries(data.instance.popper,data.instance.reference,options.padding,boundariesElement,data.positionFixed);popperStyles.top=top,popperStyles.left=left,popperStyles[transformProp]=transform,options.boundaries=boundaries;var order=options.priority,popper=data.offsets.popper,check={primary:function(placement){var value=popper[placement];return popper[placement]boundaries[placement]&&!options.escapeWithReference&&(value=Math.min(popper[mainSide],boundaries[placement]-("right"===placement?popper.width:popper.height))),defineProperty({},mainSide,value)}};return order.forEach(function(placement){var side=-1!==["left","top"].indexOf(placement)?"primary":"secondary";popper=_extends({},popper,check[side](placement))}),data.offsets.popper=popper,data}function shift(data){var placement=data.placement,basePlacement=placement.split("-")[0],shiftvariation=placement.split("-")[1];if(shiftvariation){var _data$offsets=data.offsets,reference=_data$offsets.reference,popper=_data$offsets.popper,isVertical=-1!==["bottom","top"].indexOf(basePlacement),side=isVertical?"left":"top",measurement=isVertical?"width":"height",shiftOffsets={start:defineProperty({},side,reference[side]),end:defineProperty({},side,reference[side]+reference[measurement]-popper[measurement])};data.offsets.popper=_extends({},popper,shiftOffsets[shiftvariation])}return data}function hide(data){if(!isModifierRequired(data.instance.modifiers,"hide","preventOverflow"))return data;var refRect=data.offsets.reference,bound=find(data.instance.modifiers,function(modifier){return"preventOverflow"===modifier.name}).boundaries;if(refRect.bottombound.right||refRect.top>bound.bottom||refRect.right2&&void 0!==arguments[2]?arguments[2]:{},content=getContent(value),classes=void 0!==value.classes?value.classes:directive.options.defaultClass,opts=_extends$1({title:content},getOptions(_extends$1({},value,{placement:getPlacement(value,modifiers)}))),tooltip=el._tooltip=new Tooltip(el,opts);tooltip.setClasses(classes),tooltip._vueEl=el;var targetClasses=void 0!==value.targetClasses?value.targetClasses:directive.options.defaultTargetClass;return el._tooltipTargetClasses=targetClasses,addClasses(el,targetClasses),tooltip}function destroyTooltip(el){el._tooltip&&(el._tooltip.dispose(),delete el._tooltip,delete el._tooltipOldShow),el._tooltipTargetClasses&&(removeClasses(el,el._tooltipTargetClasses),delete el._tooltipTargetClasses)}function bind(el,_ref){var value=_ref.value,modifiers=(_ref.oldValue,_ref.modifiers),content=getContent(value);if(content&&state.enabled){var tooltip=void 0;el._tooltip?(tooltip=el._tooltip,tooltip.setContent(content),tooltip.setOptions(_extends$1({},value,{placement:getPlacement(value,modifiers)}))):tooltip=createTooltip(el,value,modifiers),void 0!==value.show&&value.show!==el._tooltipOldShow&&(el._tooltipOldShow=value.show,value.show?tooltip.show():tooltip.hide())}else destroyTooltip(el)}function addListeners(el){el.addEventListener("click",onClick),el.addEventListener("touchstart",onTouchStart,!!supportsPassive&&{passive:!0})}function removeListeners(el){el.removeEventListener("click",onClick),el.removeEventListener("touchstart",onTouchStart),el.removeEventListener("touchend",onTouchEnd),el.removeEventListener("touchcancel",onTouchCancel)}function onClick(event){var el=event.currentTarget;event.closePopover=!el.$_vclosepopover_touch,event.closeAllPopover=el.$_closePopoverModifiers&&!!el.$_closePopoverModifiers.all}function onTouchStart(event){if(1===event.changedTouches.length){var el=event.currentTarget;el.$_vclosepopover_touch=!0;var touch=event.changedTouches[0];el.$_vclosepopover_touchPoint=touch,el.addEventListener("touchend",onTouchEnd),el.addEventListener("touchcancel",onTouchCancel)}}function onTouchEnd(event){var el=event.currentTarget;if(el.$_vclosepopover_touch=!1,1===event.changedTouches.length){var touch=event.changedTouches[0],firstTouch=el.$_vclosepopover_touchPoint;event.closePopover=Math.abs(touch.screenY-firstTouch.screenY)<20&&Math.abs(touch.screenX-firstTouch.screenX)<20,event.closeAllPopover=el.$_closePopoverModifiers&&!!el.$_closePopoverModifiers.all}}function onTouchCancel(event){event.currentTarget.$_vclosepopover_touch=!1}function getInternetExplorerVersion(){var ua=window.navigator.userAgent,msie=ua.indexOf("MSIE ");if(msie>0)return parseInt(ua.substring(msie+5,ua.indexOf(".",msie)),10);if(ua.indexOf("Trident/")>0){var rv=ua.indexOf("rv:");return parseInt(ua.substring(rv+3,ua.indexOf(".",rv)),10)}var edge=ua.indexOf("Edge/");return edge>0?parseInt(ua.substring(edge+5,ua.indexOf(".",edge)),10):-1}function initCompat(){initCompat.init||(initCompat.init=!0,isIE$1=-1!==getInternetExplorerVersion())}function install$1(Vue){Vue.component("resize-observer",ResizeObserver)}function getDefault(key){var value=directive.options.popover[key];return void 0===value?directive.options[key]:value}function handleGlobalClick(event){handleGlobalClose(event)}function handleGlobalTouchend(event){handleGlobalClose(event,!0)}function handleGlobalClose(event){var touch=arguments.length>1&&void 0!==arguments[1]&&arguments[1];requestAnimationFrame(function(){for(var popover=void 0,i=0;i1&&void 0!==arguments[1]?arguments[1]:{};if(!install.installed){install.installed=!0;var finalOptions={};lodash_merge(finalOptions,defaultOptions,options),plugin.options=finalOptions,directive.options=finalOptions,Vue.directive("tooltip",directive),Vue.directive("close-popover",vclosepopover),Vue.component("v-popover",Popover)}}__webpack_require__.d(__webpack_exports__,"a",function(){return VTooltip});for(var _typeof2="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj},isBrowser="undefined"!=typeof window&&"undefined"!=typeof document,longerTimeoutBrowsers=["Edge","Trident","Firefox"],timeoutDuration=0,i=0;i=0){timeoutDuration=1;break}var supportsMicroTasks=isBrowser&&window.Promise,debounce=supportsMicroTasks?microtaskDebounce:taskDebounce,isIE11=isBrowser&&!(!window.MSInputMethodContext||!document.documentMode),isIE10=isBrowser&&/MSIE 10/.test(navigator.userAgent),classCallCheck=function(instance,Constructor){if(!(instance instanceof Constructor))throw new TypeError("Cannot call a class as a function")},createClass=function(){function defineProperties(target,props){for(var i=0;i2&&void 0!==arguments[2]?arguments[2]:{};classCallCheck(this,Popper),this.scheduleUpdate=function(){return requestAnimationFrame(_this.update)},this.update=debounce(this.update.bind(this)),this.options=_extends({},Popper.Defaults,options),this.state={isDestroyed:!1,isCreated:!1,scrollParents:[]},this.reference=reference&&reference.jquery?reference[0]:reference,this.popper=popper&&popper.jquery?popper[0]:popper,this.options.modifiers={},Object.keys(_extends({},Popper.Defaults.modifiers,options.modifiers)).forEach(function(name){_this.options.modifiers[name]=_extends({},Popper.Defaults.modifiers[name]||{},options.modifiers?options.modifiers[name]:{})}),this.modifiers=Object.keys(this.options.modifiers).map(function(name){return _extends({name:name},_this.options.modifiers[name])}).sort(function(a,b){return a.order-b.order}),this.modifiers.forEach(function(modifierOptions){modifierOptions.enabled&&isFunction(modifierOptions.onLoad)&&modifierOptions.onLoad(_this.reference,_this.popper,_this.options,modifierOptions,_this.state)}),this.update();var eventsEnabled=this.options.eventsEnabled;eventsEnabled&&this.enableEventListeners(),this.state.eventsEnabled=eventsEnabled}return createClass(Popper,[{key:"update",value:function(){return update.call(this)}},{key:"destroy",value:function(){return destroy.call(this)}},{key:"enableEventListeners",value:function(){return enableEventListeners.call(this)}},{key:"disableEventListeners",value:function(){return disableEventListeners.call(this)}}]),Popper}();Popper.Utils=("undefined"!=typeof window?window:global).PopperUtils,Popper.placements=placements,Popper.Defaults=Defaults;var SVGAnimatedString=function(){};"undefined"!=typeof window&&(SVGAnimatedString=window.SVGAnimatedString);var supportsPassive=!1;if("undefined"!=typeof window){supportsPassive=!1;try{var opts=Object.defineProperty({},"passive",{get:function(){supportsPassive=!0}});window.addEventListener("test",null,opts)}catch(e){}}var _typeof="function"==typeof Symbol&&"symbol"===_typeof2(Symbol.iterator)?function(obj){return void 0===obj?"undefined":_typeof2(obj)}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":void 0===obj?"undefined":_typeof2(obj)},classCallCheck$1=function(instance,Constructor){if(!(instance instanceof Constructor))throw new TypeError("Cannot call a class as a function")},createClass$1=function(){function defineProperties(target,props){for(var i=0;i
',trigger:"hover focus",offset:0},openTooltips=[],Tooltip=function(){function Tooltip(reference,options){classCallCheck$1(this,Tooltip),_initialiseProps.call(this),options=_extends$1({},DEFAULT_OPTIONS,options),reference.jquery&&(reference=reference[0]),this.reference=reference,this.options=options,this._isOpen=!1,this._init()}return createClass$1(Tooltip,[{key:"setClasses",value:function(classes){this._classes=classes}},{key:"setContent",value:function(content){this.options.title=content,this._tooltipNode&&this._setContent(content,this.options)}},{key:"setOptions",value:function(options){var classesUpdated=!1,classes=options&&options.classes||directive.options.defaultClass;this._classes!==classes&&(this.setClasses(classes),classesUpdated=!0),options=getOptions(options);var needPopperUpdate=!1,needRestart=!1;this.options.offset===options.offset&&this.options.placement===options.placement||(needPopperUpdate=!0),(this.options.template!==options.template||this.options.trigger!==options.trigger||this.options.container!==options.container||classesUpdated)&&(needRestart=!0);for(var key in options)this.options[key]=options[key];if(this._tooltipNode)if(needRestart){var isOpen=this._isOpen;this.dispose(),this._init(),isOpen&&this.show()}else needPopperUpdate&&this.popperInstance.update()}},{key:"_init",value:function(){var events="string"==typeof this.options.trigger?this.options.trigger.split(" ").filter(function(trigger){return-1!==["click","hover","focus"].indexOf(trigger)}):[];this._isDisposed=!1,this._enableDocumentTouch=-1===events.indexOf("manual"),this._setEventListeners(this.reference,events,this.options)}},{key:"_create",value:function(reference,template){var tooltipGenerator=window.document.createElement("div");tooltipGenerator.innerHTML=template.trim();var tooltipNode=tooltipGenerator.childNodes[0];return tooltipNode.id="tooltip_"+Math.random().toString(36).substr(2,10),tooltipNode.setAttribute("aria-hidden","true"),this.options.autoHide&&-1!==this.options.trigger.indexOf("hover")&&(tooltipNode.addEventListener("mouseenter",this.hide),tooltipNode.addEventListener("click",this.hide)),tooltipNode}},{key:"_setContent",value:function(content,options){var _this=this;this.asyncContent=!1,this._applyContent(content,options).then(function(){_this.popperInstance.update()})}},{key:"_applyContent",value:function(title,options){var _this2=this;return new Promise(function(resolve,reject){var allowHtml=options.html,rootNode=_this2._tooltipNode,titleNode=rootNode.querySelector(_this2.options.innerSelector);if(1===title.nodeType){if(allowHtml){for(;titleNode.firstChild;)titleNode.removeChild(titleNode.firstChild);titleNode.appendChild(title)}}else{if("function"==typeof title){var result=title();return void(result&&"function"==typeof result.then?(_this2.asyncContent=!0,options.loadingClass&&addClasses(rootNode,options.loadingClass),options.loadingContent&&_this2._applyContent(options.loadingContent,options),result.then(function(asyncResult){return options.loadingClass&&removeClasses(rootNode,options.loadingClass),_this2._applyContent(asyncResult,options)}).then(resolve).catch(reject)):_this2._applyContent(result,options).then(resolve).catch(reject))}allowHtml?titleNode.innerHTML=title:titleNode.innerText=title}resolve()})}},{key:"_show",value:function(reference,options){if(options&&"string"==typeof options.container){if(!document.querySelector(options.container))return}clearTimeout(this._disposeTimer),options=Object.assign({},options),delete options.offset;var updateClasses=!0;this._tooltipNode&&(addClasses(this._tooltipNode,this._classes),updateClasses=!1);var result=this._ensureShown(reference,options);return updateClasses&&this._tooltipNode&&addClasses(this._tooltipNode,this._classes),addClasses(reference,["v-tooltip-open"]),result}},{key:"_ensureShown",value:function(reference,options){var _this3=this;if(this._isOpen)return this;if(this._isOpen=!0,openTooltips.push(this),this._tooltipNode)return this._tooltipNode.style.display="",this._tooltipNode.setAttribute("aria-hidden","false"),this.popperInstance.enableEventListeners(),this.popperInstance.update(),this.asyncContent&&this._setContent(options.title,options),this;var title=reference.getAttribute("title")||options.title;if(!title)return this;var tooltipNode=this._create(reference,options.template);this._tooltipNode=tooltipNode,this._setContent(title,options),reference.setAttribute("aria-describedby",tooltipNode.id);var container=this._findContainer(options.container,reference);this._append(tooltipNode,container);var popperOptions=_extends$1({},options.popperOptions,{placement:options.placement});return popperOptions.modifiers=_extends$1({},popperOptions.modifiers,{arrow:{element:this.options.arrowSelector}}),options.boundariesElement&&(popperOptions.modifiers.preventOverflow={boundariesElement:options.boundariesElement}),this.popperInstance=new Popper(reference,tooltipNode,popperOptions),requestAnimationFrame(function(){!_this3._isDisposed&&_this3.popperInstance?(_this3.popperInstance.update(),requestAnimationFrame(function(){_this3._isDisposed?_this3.dispose():_this3._isOpen&&tooltipNode.setAttribute("aria-hidden","false")})):_this3.dispose()}),this}},{key:"_noLongerOpen",value:function(){var index=openTooltips.indexOf(this);-1!==index&&openTooltips.splice(index,1)}},{key:"_hide",value:function(){var _this4=this;if(!this._isOpen)return this;this._isOpen=!1,this._noLongerOpen(),this._tooltipNode.style.display="none",this._tooltipNode.setAttribute("aria-hidden","true"),this.popperInstance.disableEventListeners(),clearTimeout(this._disposeTimer);var disposeTime=directive.options.disposeTimeout;return null!==disposeTime&&(this._disposeTimer=setTimeout(function(){_this4._tooltipNode&&(_this4._tooltipNode.removeEventListener("mouseenter",_this4.hide),_this4._tooltipNode.removeEventListener("click",_this4.hide),_this4._tooltipNode.parentNode.removeChild(_this4._tooltipNode),_this4._tooltipNode=null)},disposeTime)),removeClasses(this.reference,["v-tooltip-open"]),this}},{key:"_dispose",value:function(){var _this5=this;return this._isDisposed=!0,this._events.forEach(function(_ref){var func=_ref.func,event=_ref.event;_this5.reference.removeEventListener(event,func)}),this._events=[],this._tooltipNode?(this._hide(),this._tooltipNode.removeEventListener("mouseenter",this.hide),this._tooltipNode.removeEventListener("click",this.hide),this.popperInstance.destroy(),this.popperInstance.options.removeOnDestroy||(this._tooltipNode.parentNode.removeChild(this._tooltipNode),this._tooltipNode=null)):this._noLongerOpen(),this}},{key:"_findContainer",value:function(container,reference){return"string"==typeof container?container=window.document.querySelector(container):!1===container&&(container=reference.parentNode),container}},{key:"_append",value:function(tooltipNode,container){container.appendChild(tooltipNode)}},{key:"_setEventListeners",value:function(reference,events,options){var _this6=this,directEvents=[],oppositeEvents=[];events.forEach(function(event){switch(event){case"hover":directEvents.push("mouseenter"),oppositeEvents.push("mouseleave"),_this6.options.hideOnTargetClick&&oppositeEvents.push("click");break;case"focus":directEvents.push("focus"),oppositeEvents.push("blur"),_this6.options.hideOnTargetClick&&oppositeEvents.push("click");break;case"click":directEvents.push("click"),oppositeEvents.push("click")}}),directEvents.forEach(function(event){var func=function(evt){!0!==_this6._isOpen&&(evt.usedByTooltip=!0,_this6._scheduleShow(reference,options.delay,options,evt))};_this6._events.push({event:event,func:func}),reference.addEventListener(event,func)}),oppositeEvents.forEach(function(event){var func=function(evt){!0!==evt.usedByTooltip&&_this6._scheduleHide(reference,options.delay,options,evt)};_this6._events.push({event:event,func:func}),reference.addEventListener(event,func)})}},{key:"_onDocumentTouch",value:function(event){this._enableDocumentTouch&&this._scheduleHide(this.reference,this.options.delay,this.options,event)}},{key:"_scheduleShow",value:function(reference,delay,options){var _this7=this,computedDelay=delay&&delay.show||delay||0;clearTimeout(this._scheduleTimer),this._scheduleTimer=window.setTimeout(function(){return _this7._show(reference,options)},computedDelay)}},{key:"_scheduleHide",value:function(reference,delay,options,evt){var _this8=this,computedDelay=delay&&delay.hide||delay||0;clearTimeout(this._scheduleTimer),this._scheduleTimer=window.setTimeout(function(){if(!1!==_this8._isOpen&&document.body.contains(_this8._tooltipNode)){if("mouseleave"===evt.type){if(_this8._setTooltipNodeEvent(evt,reference,delay,options))return}_this8._hide(reference,options)}},computedDelay)}}]),Tooltip}(),_initialiseProps=function(){var _this9=this;this.show=function(){_this9._show(_this9.reference,_this9.options)},this.hide=function(){_this9._hide()},this.dispose=function(){_this9._dispose()},this.toggle=function(){return _this9._isOpen?_this9.hide():_this9.show()},this._events=[],this._setTooltipNodeEvent=function(evt,reference,delay,options){var relatedreference=evt.relatedreference||evt.toElement||evt.relatedTarget,callback=function callback(evt2){var relatedreference2=evt2.relatedreference||evt2.toElement||evt2.relatedTarget;_this9._tooltipNode.removeEventListener(evt.type,callback),reference.contains(relatedreference2)||_this9._scheduleHide(reference,options.delay,options,evt2)};return!!_this9._tooltipNode.contains(relatedreference)&&(_this9._tooltipNode.addEventListener(evt.type,callback),!0)}};"undefined"!=typeof document&&document.addEventListener("touchstart",function(event){for(var i=0;i
',defaultArrowSelector:".tooltip-arrow, .tooltip__arrow",defaultInnerSelector:".tooltip-inner, .tooltip__inner",defaultDelay:0,defaultTrigger:"hover focus",defaultOffset:0,defaultContainer:"body",defaultBoundariesElement:void 0,defaultPopperOptions:{},defaultLoadingClass:"tooltip-loading",defaultLoadingContent:"...",autoHide:!0,defaultHideOnTargetClick:!0,disposeTimeout:5e3,popover:{defaultPlacement:"bottom",defaultClass:"vue-popover-theme",defaultBaseClass:"tooltip popover",defaultWrapperClass:"wrapper",defaultInnerClass:"tooltip-inner popover-inner",defaultArrowClass:"tooltip-arrow popover-arrow",defaultDelay:0,defaultTrigger:"click",defaultOffset:0,defaultContainer:"body",defaultBoundariesElement:void 0,defaultPopperOptions:{},defaultAutoHide:!0,defaultHandleResize:!0}},directive={options:defaultOptions,bind:bind,update:bind,unbind:function(el){destroyTooltip(el)}},vclosepopover={bind:function(el,_ref){var value=_ref.value,modifiers=_ref.modifiers;el.$_closePopoverModifiers=modifiers,(void 0===value||value)&&addListeners(el)},update:function(el,_ref2){var value=_ref2.value,oldValue=_ref2.oldValue,modifiers=_ref2.modifiers;el.$_closePopoverModifiers=modifiers,value!==oldValue&&(void 0===value||value?addListeners(el):removeListeners(el))},unbind:function(el){removeListeners(el)}},isIE$1=void 0,ResizeObserver={render:function(){var _vm=this,_h=_vm.$createElement;return(_vm._self._c||_h)("div",{staticClass:"resize-observer",attrs:{tabindex:"-1"}})},staticRenderFns:[],_scopeId:"data-v-b329ee4c",name:"resize-observer",methods:{notify:function(){this.$emit("notify")},addResizeHandlers:function(){this._resizeObject.contentDocument.defaultView.addEventListener("resize",this.notify),this._w===this.$el.offsetWidth&&this._h===this.$el.offsetHeight||this.notify()},removeResizeHandlers:function(){this._resizeObject&&this._resizeObject.onload&&(!isIE$1&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener("resize",this.notify),delete this._resizeObject.onload)}},mounted:function(){var _this=this;initCompat(),this.$nextTick(function(){_this._w=_this.$el.offsetWidth,_this._h=_this.$el.offsetHeight});var object=document.createElement("object");this._resizeObject=object,object.setAttribute("style","display: block; position: absolute; top: 0; left: 0; height: 100%; width: 100%; overflow: hidden; pointer-events: none; z-index: -1;"),object.setAttribute("aria-hidden","true"),object.setAttribute("tabindex",-1),object.onload=this.addResizeHandlers,object.type="text/html",isIE$1&&this.$el.appendChild(object),object.data="about:blank",isIE$1||this.$el.appendChild(object)},beforeDestroy:function(){this.removeResizeHandlers()}},plugin$2={version:"0.4.4",install:install$1},GlobalVue$1=null;"undefined"!=typeof window?GlobalVue$1=window.Vue:void 0!==global&&(GlobalVue$1=global.Vue),GlobalVue$1&&GlobalVue$1.use(plugin$2);var isIOS=!1;"undefined"!=typeof window&&"undefined"!=typeof navigator&&(isIOS=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream);var openPopovers=[],Element=function(){};"undefined"!=typeof window&&(Element=window.Element);var Popover={render:function(){var _vm=this,_h=_vm.$createElement,_c=_vm._self._c||_h;return _c("div",{staticClass:"v-popover",class:_vm.cssClass},[_c("span",{ref:"trigger",staticClass:"trigger",staticStyle:{display:"inline-block"},attrs:{"aria-describedby":_vm.popoverId,tabindex:-1!==_vm.trigger.indexOf("focus")?0:-1}},[_vm._t("default")],2),_vm._v(" "),_c("div",{ref:"popover",class:[_vm.popoverBaseClass,_vm.popoverClass,_vm.cssClass],style:{visibility:_vm.isOpen?"visible":"hidden"},attrs:{id:_vm.popoverId,"aria-hidden":_vm.isOpen?"false":"true"}},[_c("div",{class:_vm.popoverWrapperClass},[_c("div",{ref:"inner",class:_vm.popoverInnerClass,staticStyle:{position:"relative"}},[_c("div",[_vm._t("popover")],2),_vm._v(" "),_vm.handleResize?_c("ResizeObserver",{on:{notify:_vm.$_handleResize}}):_vm._e()],1),_vm._v(" "),_c("div",{ref:"arrow",class:_vm.popoverArrowClass})])])])},staticRenderFns:[],name:"VPopover",components:{ResizeObserver:ResizeObserver},props:{open:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},placement:{type:String,default:function(){return getDefault("defaultPlacement")}},delay:{type:[String,Number,Object],default:function(){return getDefault("defaultDelay")}},offset:{type:[String,Number],default:function(){return getDefault("defaultOffset")}},trigger:{type:String,default:function(){return getDefault("defaultTrigger")}},container:{type:[String,Object,Element],default:function(){return getDefault("defaultContainer")}},boundariesElement:{type:Element,default:function(){return getDefault("defaultBoundariesElement")}},popperOptions:{type:Object,default:function(){return getDefault("defaultPopperOptions")}},popoverClass:{type:[String,Array],default:function(){return getDefault("defaultClass")}},popoverBaseClass:{type:[String,Array],default:function(){return directive.options.popover.defaultBaseClass}},popoverInnerClass:{type:[String,Array],default:function(){return directive.options.popover.defaultInnerClass}},popoverWrapperClass:{type:[String,Array],default:function(){return directive.options.popover.defaultWrapperClass}},popoverArrowClass:{type:[String,Array],default:function(){return directive.options.popover.defaultArrowClass}},autoHide:{type:Boolean,default:function(){return directive.options.popover.defaultAutoHide}},handleResize:{type:Boolean,default:function(){return directive.options.popover.defaultHandleResize}},openGroup:{type:String,default:null}},data:function(){return{isOpen:!1,id:Math.random().toString(36).substr(2,10)}},computed:{cssClass:function(){return{open:this.isOpen}},popoverId:function(){return"popover_"+this.id}},watch:{open:function(val){val?this.show():this.hide()},disabled:function(val,oldVal){val!==oldVal&&(val?this.hide():this.open&&this.show())},container:function(val){if(this.isOpen&&this.popperInstance){var popoverNode=this.$refs.popover,reference=this.$refs.trigger,container=this.$_findContainer(this.container,reference);if(!container)return void console.warn("No container for popover",this);container.appendChild(popoverNode),this.popperInstance.scheduleUpdate()}},trigger:function(val){this.$_removeEventListeners(),this.$_addEventListeners()},placement:function(val){var _this=this;this.$_updatePopper(function(){_this.popperInstance.options.placement=val})},offset:"$_restartPopper",boundariesElement:"$_restartPopper",popperOptions:{handler:"$_restartPopper",deep:!0}},created:function(){this.$_isDisposed=!1,this.$_mounted=!1,this.$_events=[],this.$_preventOpen=!1},mounted:function(){var popoverNode=this.$refs.popover;popoverNode.parentNode&&popoverNode.parentNode.removeChild(popoverNode),this.$_init(),this.open&&this.show()},beforeDestroy:function(){this.dispose()},methods:{show:function(){var _this2=this,_ref=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},event=_ref.event,_ref$force=(_ref.skipDelay,_ref.force);!(void 0!==_ref$force&&_ref$force)&&this.disabled||(this.$_scheduleShow(event),this.$emit("show")),this.$emit("update:open",!0),this.$_beingShowed=!0,requestAnimationFrame(function(){_this2.$_beingShowed=!1})},hide:function(){var _ref2=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},event=_ref2.event;_ref2.skipDelay;this.$_scheduleHide(event),this.$emit("hide"),this.$emit("update:open",!1)},dispose:function(){if(this.$_isDisposed=!0,this.$_removeEventListeners(),this.hide({skipDelay:!0}),this.popperInstance&&(this.popperInstance.destroy(),!this.popperInstance.options.removeOnDestroy)){var popoverNode=this.$refs.popover;popoverNode.parentNode&&popoverNode.parentNode.removeChild(popoverNode)}this.$_mounted=!1,this.popperInstance=null,this.isOpen=!1,this.$emit("dispose")},$_init:function(){-1===this.trigger.indexOf("manual")&&this.$_addEventListeners()},$_show:function(){var _this3=this,reference=this.$refs.trigger,popoverNode=this.$refs.popover;if(clearTimeout(this.$_disposeTimer),!this.isOpen){if(this.popperInstance&&(this.isOpen=!0,this.popperInstance.enableEventListeners(),this.popperInstance.scheduleUpdate()),!this.$_mounted){var container=this.$_findContainer(this.container,reference);if(!container)return void console.warn("No container for popover",this);container.appendChild(popoverNode),this.$_mounted=!0}if(!this.popperInstance){var popperOptions=_extends$1({},this.popperOptions,{placement:this.placement});if(popperOptions.modifiers=_extends$1({},popperOptions.modifiers,{arrow:{element:this.$refs.arrow}}),this.offset){var offset=this.$_getOffset();popperOptions.modifiers.offset={offset:offset}}this.boundariesElement&&(popperOptions.modifiers.preventOverflow={boundariesElement:this.boundariesElement}),this.popperInstance=new Popper(reference,popoverNode,popperOptions),requestAnimationFrame(function(){!_this3.$_isDisposed&&_this3.popperInstance?(_this3.popperInstance.scheduleUpdate(),requestAnimationFrame(function(){_this3.$_isDisposed?_this3.dispose():_this3.isOpen=!0})):_this3.dispose()})}var openGroup=this.openGroup;if(openGroup)for(var popover=void 0,i=0;i1&&void 0!==arguments[1]&&arguments[1];if(clearTimeout(this.$_scheduleTimer),skipDelay)this.$_show();else{var computedDelay=parseInt(this.delay&&this.delay.show||this.delay||0);this.$_scheduleTimer=setTimeout(this.$_show.bind(this),computedDelay)}},$_scheduleHide:function(){var _this6=this,event=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,skipDelay=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(clearTimeout(this.$_scheduleTimer),skipDelay)this.$_hide();else{var computedDelay=parseInt(this.delay&&this.delay.hide||this.delay||0);this.$_scheduleTimer=setTimeout(function(){if(_this6.isOpen){if(event&&"mouseleave"===event.type){if(_this6.$_setTooltipNodeEvent(event))return}_this6.$_hide()}},computedDelay)}},$_setTooltipNodeEvent:function(event){var _this7=this,reference=this.$refs.trigger,popoverNode=this.$refs.popover,relatedreference=event.relatedreference||event.toElement||event.relatedTarget,callback=function callback(event2){var relatedreference2=event2.relatedreference||event2.toElement||event2.relatedTarget;popoverNode.removeEventListener(event.type,callback),reference.contains(relatedreference2)||_this7.hide({event:event2})};return!!popoverNode.contains(relatedreference)&&(popoverNode.addEventListener(event.type,callback),!0)},$_removeEventListeners:function(){var reference=this.$refs.trigger;this.$_events.forEach(function(_ref3){var func=_ref3.func,event=_ref3.event;reference.removeEventListener(event,func)}),this.$_events=[]},$_updatePopper:function(cb){this.popperInstance&&(cb(),this.isOpen&&this.popperInstance.scheduleUpdate())},$_restartPopper:function(){if(this.popperInstance){var isOpen=this.isOpen;this.dispose(),this.$_isDisposed=!1,this.$_init(),isOpen&&this.show({skipDelay:!0,force:!0})}},$_handleGlobalClose:function(event){var _this8=this,touch=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.$_beingShowed||(this.hide({event:event}),event.closePopover?this.$emit("close-directive"):this.$emit("auto-hide"),touch&&(this.$_preventOpen=!0,setTimeout(function(){_this8.$_preventOpen=!1},300)))},$_handleResize:function(){this.isOpen&&this.popperInstance&&(this.popperInstance.scheduleUpdate(),this.$emit("resize"))}}};"undefined"!=typeof document&&"undefined"!=typeof window&&(isIOS?document.addEventListener("touchend",handleGlobalTouchend,!supportsPassive||{passive:!0,capture:!0}):window.addEventListener("click",handleGlobalClick,!0));var commonjsGlobal="undefined"!=typeof window?window:void 0!==global?global:"undefined"!=typeof self?self:{},lodash_merge=function(fn,module){return module={exports:{}},fn(module,module.exports),module.exports}(function(module,exports){function apply(func,thisArg,args){switch(args.length){case 0:return func.call(thisArg);case 1:return func.call(thisArg,args[0]);case 2:return func.call(thisArg,args[0],args[1]);case 3:return func.call(thisArg,args[0],args[1],args[2])}return func.apply(thisArg,args)}function baseTimes(n,iteratee){for(var index=-1,result=Array(n);++index-1}function listCacheSet(key,value){var data=this.__data__,index=assocIndexOf(data,key);return index<0?(++this.size,data.push([key,value])):data[index][1]=value,this}function MapCache(entries){var index=-1,length=null==entries?0:entries.length;for(this.clear();++index-1&&value%1==0&&value-1&&value%1==0&&value<=MAX_SAFE_INTEGER}function isObject(value){var type=void 0===value?"undefined":_typeof2(value);return null!=value&&("object"==type||"function"==type)}function isObjectLike(value){return null!=value&&"object"==(void 0===value?"undefined":_typeof2(value))}function isPlainObject(value){if(!isObjectLike(value)||baseGetTag(value)!=objectTag)return!1;var proto=getPrototype(value);if(null===proto)return!0;var Ctor=hasOwnProperty.call(proto,"constructor")&&proto.constructor;return"function"==typeof Ctor&&Ctor instanceof Ctor&&funcToString.call(Ctor)==objectCtorString}function toPlainObject(value){return copyObject(value,keysIn(value))}function keysIn(object){return isArrayLike(object)?arrayLikeKeys(object,!0):baseKeysIn(object)}function constant(value){return function(){return value}}function identity(value){return value}function stubFalse(){return!1}var LARGE_ARRAY_SIZE=200,HASH_UNDEFINED="__lodash_hash_undefined__",HOT_COUNT=800,HOT_SPAN=16,MAX_SAFE_INTEGER=9007199254740991,argsTag="[object Arguments]",asyncTag="[object AsyncFunction]",funcTag="[object Function]",genTag="[object GeneratorFunction]",nullTag="[object Null]",objectTag="[object Object]",proxyTag="[object Proxy]",undefinedTag="[object Undefined]",reRegExpChar=/[\\^$.*+?()[\]{}|]/g,reIsHostCtor=/^\[object .+?Constructor\]$/,reIsUint=/^(?:0|[1-9]\d*)$/,typedArrayTags={};typedArrayTags["[object Float32Array]"]=typedArrayTags["[object Float64Array]"]=typedArrayTags["[object Int8Array]"]=typedArrayTags["[object Int16Array]"]=typedArrayTags["[object Int32Array]"]=typedArrayTags["[object Uint8Array]"]=typedArrayTags["[object Uint8ClampedArray]"]=typedArrayTags["[object Uint16Array]"]=typedArrayTags["[object Uint32Array]"]=!0,typedArrayTags[argsTag]=typedArrayTags["[object Array]"]=typedArrayTags["[object ArrayBuffer]"]=typedArrayTags["[object Boolean]"]=typedArrayTags["[object DataView]"]=typedArrayTags["[object Date]"]=typedArrayTags["[object Error]"]=typedArrayTags[funcTag]=typedArrayTags["[object Map]"]=typedArrayTags["[object Number]"]=typedArrayTags[objectTag]=typedArrayTags["[object RegExp]"]=typedArrayTags["[object Set]"]=typedArrayTags["[object String]"]=typedArrayTags["[object WeakMap]"]=!1;var freeGlobal="object"==(void 0===commonjsGlobal?"undefined":_typeof2(commonjsGlobal))&&commonjsGlobal&&commonjsGlobal.Object===Object&&commonjsGlobal,freeSelf="object"==("undefined"==typeof self?"undefined":_typeof2(self))&&self&&self.Object===Object&&self,root=freeGlobal||freeSelf||Function("return this")(),freeExports=exports&&!exports.nodeType&&exports,freeModule=freeExports&&!0&&module&&!module.nodeType&&module,moduleExports=freeModule&&freeModule.exports===freeExports,freeProcess=moduleExports&&freeGlobal.process,nodeUtil=function(){try{return freeProcess&&freeProcess.binding&&freeProcess.binding("util")}catch(e){}}(),nodeIsTypedArray=nodeUtil&&nodeUtil.isTypedArray,arrayProto=Array.prototype,funcProto=Function.prototype,objectProto=Object.prototype,coreJsData=root["__core-js_shared__"],funcToString=funcProto.toString,hasOwnProperty=objectProto.hasOwnProperty,maskSrcKey=function(){var uid=/[^.]+$/.exec(coreJsData&&coreJsData.keys&&coreJsData.keys.IE_PROTO||"");return uid?"Symbol(src)_1."+uid:""}(),nativeObjectToString=objectProto.toString,objectCtorString=funcToString.call(Object),reIsNative=RegExp("^"+funcToString.call(hasOwnProperty).replace(reRegExpChar,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Buffer=moduleExports?root.Buffer:void 0,_Symbol=root.Symbol,Uint8Array=root.Uint8Array,allocUnsafe=Buffer?Buffer.allocUnsafe:void 0,getPrototype=function(func,transform){return function(arg){return func(transform(arg))}}(Object.getPrototypeOf,Object),objectCreate=Object.create,propertyIsEnumerable=objectProto.propertyIsEnumerable,splice=arrayProto.splice,symToStringTag=_Symbol?_Symbol.toStringTag:void 0,defineProperty=function(){try{var func=getNative(Object,"defineProperty");return func({},"",{}),func}catch(e){}}(),nativeIsBuffer=Buffer?Buffer.isBuffer:void 0,nativeMax=Math.max,nativeNow=Date.now,Map=getNative(root,"Map"),nativeCreate=getNative(Object,"create"),baseCreate=function(){function object(){}return function(proto){if(!isObject(proto))return{};if(objectCreate)return objectCreate(proto);object.prototype=proto;var result=new object;return object.prototype=void 0,result}}();Hash.prototype.clear=hashClear,Hash.prototype.delete=hashDelete,Hash.prototype.get=hashGet,Hash.prototype.has=hashHas,Hash.prototype.set=hashSet,ListCache.prototype.clear=listCacheClear,ListCache.prototype.delete=listCacheDelete,ListCache.prototype.get=listCacheGet,ListCache.prototype.has=listCacheHas,ListCache.prototype.set=listCacheSet,MapCache.prototype.clear=mapCacheClear,MapCache.prototype.delete=mapCacheDelete,MapCache.prototype.get=mapCacheGet,MapCache.prototype.has=mapCacheHas,MapCache.prototype.set=mapCacheSet,Stack.prototype.clear=stackClear,Stack.prototype.delete=stackDelete,Stack.prototype.get=stackGet,Stack.prototype.has=stackHas,Stack.prototype.set=stackSet;var baseFor=function(fromRight){return function(object,iteratee,keysFunc){for(var index=-1,iterable=Object(object),props=keysFunc(object),length=props.length;length--;){var key=props[fromRight?length:++index];if(!1===iteratee(iterable[key],key,iterable))break}return object}}(),baseSetToString=defineProperty?function(func,string){return defineProperty(func,"toString",{configurable:!0,enumerable:!1,value:constant(string),writable:!0})}:identity,setToString=function(func){var count=0,lastCalled=0;return function(){var stamp=nativeNow(),remaining=HOT_SPAN-(stamp-lastCalled);if(lastCalled=stamp,remaining>0){if(++count>=HOT_COUNT)return arguments[0]}else count=0;return func.apply(void 0,arguments)}}(baseSetToString),isArguments=baseIsArguments(function(){return arguments}())?baseIsArguments:function(value){return isObjectLike(value)&&hasOwnProperty.call(value,"callee")&&!propertyIsEnumerable.call(value,"callee")},isArray=Array.isArray,isBuffer=nativeIsBuffer||stubFalse,isTypedArray=nodeIsTypedArray?function(func){return function(value){return func(value)}}(nodeIsTypedArray):baseIsTypedArray,merge=function(assigner){return baseRest(function(object,sources){var index=-1,length=sources.length,customizer=length>1?sources[length-1]:void 0,guard=length>2?sources[2]:void 0;for(customizer=assigner.length>3&&"function"==typeof customizer?(length--,customizer):void 0,guard&&isIterateeCall(sources[0],sources[1],guard)&&(customizer=length<3?void 0:customizer,length=1),object=Object(object);++index768,__webpack_exports__.default={directives:{tooltip:__WEBPACK_IMPORTED_MODULE_0_v_tooltip__.a},props:{endDate:{required:!0},max:{type:Number},rangeColor:{type:Array,default:function(){return __WEBPACK_IMPORTED_MODULE_2__consts_js__.a}},values:{required:!0,type:Array},locale:{type:Object},tooltip:{type:Boolean,default:!0},tooltipUnit:{type:String,default:__WEBPACK_IMPORTED_MODULE_2__consts_js__.b},vertical:{type:Boolean,default:!1},noDataText:{type:String,default:null}},data:function(){return{now:new Date}},computed:{position:function(){return this.vertical?"vertical":"horizontal"},tooltipTransform:function(){return"translate("+this.tooltipX+", "+this.tooltipY+")"},heatmap:function(){return new __WEBPACK_IMPORTED_MODULE_1__Heatmap__.a(this.endDate,this.values,this.max)},width:function(){return{horizontal:this.LEFT_SECTION_WIDTH+this.SQUARE_SIZE*this.heatmap.weekCount+this.SQUARE_BORDER_SIZE,vertical:this.LEFT_SECTION_WIDTH+this.SQUARE_SIZE*__WEBPACK_IMPORTED_MODULE_2__consts_js__.c+this.RIGHT_SECTION_WIDTH}},heigth:function(){return{horizontal:this.TOP_SECTION_HEIGTH+this.SQUARE_SIZE*__WEBPACK_IMPORTED_MODULE_2__consts_js__.c+this.SQUARE_BORDER_SIZE+this.BOTTOM_SECTION_HEIGTH,vertical:this.TOP_SECTION_HEIGTH+this.SQUARE_SIZE*this.heatmap.weekCount+this.SQUARE_BORDER_SIZE}},viewbox:function(){return"0 0 "+this.width[this.position]+" "+this.heigth[this.position]},daysLabelWrapperTransform:function(){return{horizontal:"translate(0, "+this.TOP_SECTION_HEIGTH+")",vertical:"translate("+this.LEFT_SECTION_WIDTH+", 0)"}},monthsLabelWrapperTransform:function(){return{horizontal:"translate("+this.LEFT_SECTION_WIDTH+", 0)",vertical:"translate(0, "+this.TOP_SECTION_HEIGTH+")"}},legendWrapperTransform:function(){return{horizontal:"translate("+(this.width[this.position]-this.SQUARE_SIZE*this.rangeColor.length-30)+", "+(this.heigth[this.position]-this.BOTTOM_SECTION_HEIGTH)+")",vertical:"translate("+(this.LEFT_SECTION_WIDTH+this.SQUARE_SIZE*__WEBPACK_IMPORTED_MODULE_2__consts_js__.c)+", "+this.TOP_SECTION_HEIGTH+")"}},yearWrapperTransform:function(){return"translate("+this.LEFT_SECTION_WIDTH+", "+this.TOP_SECTION_HEIGTH+")"},SQUARE_BORDER_SIZE:function(){return __WEBPACK_IMPORTED_MODULE_2__consts_js__.d/5},SQUARE_SIZE:function(){return __WEBPACK_IMPORTED_MODULE_2__consts_js__.d+this.SQUARE_BORDER_SIZE},TOP_SECTION_HEIGTH:function(){return __WEBPACK_IMPORTED_MODULE_2__consts_js__.d+__WEBPACK_IMPORTED_MODULE_2__consts_js__.d/2},RIGHT_SECTION_WIDTH:function(){return 3*this.SQUARE_SIZE},BOTTOM_SECTION_HEIGTH:function(){return __WEBPACK_IMPORTED_MODULE_2__consts_js__.d+__WEBPACK_IMPORTED_MODULE_2__consts_js__.d/2},LEFT_SECTION_WIDTH:function(){return Math.ceil(2.5*__WEBPACK_IMPORTED_MODULE_2__consts_js__.d)},lo:function(){return this.locale?{months:this.locale.months||__WEBPACK_IMPORTED_MODULE_2__consts_js__.e.months,days:this.locale.days||__WEBPACK_IMPORTED_MODULE_2__consts_js__.e.days,on:this.locale.on||__WEBPACK_IMPORTED_MODULE_2__consts_js__.e.on,less:this.locale.less||__WEBPACK_IMPORTED_MODULE_2__consts_js__.e.less,more:this.locale.more||__WEBPACK_IMPORTED_MODULE_2__consts_js__.e.more}:__WEBPACK_IMPORTED_MODULE_2__consts_js__.e}},methods:{tooltipOptions:function(day){if(this.tooltip){if(null!=day.count)return{content:""+day.count+" "+this.tooltipUnit+" "+this.lo.on+" "+this.lo.months[day.date.getMonth()]+" "+day.date.getDate()+", "+day.date.getFullYear(),delay:{show:150,hide:50}};if(this.noDataText)return{content:""+this.noDataText,delay:{show:150,hide:50}}}return!1},getWeekPosition:function(index){return this.vertical?"translate(0, "+(this.SQUARE_SIZE*this.heatmap.weekCount-(index+1)*this.SQUARE_SIZE)+")":"translate("+index*this.SQUARE_SIZE+", 0)"},getDayPosition:function(index){return this.vertical?"translate("+index*this.SQUARE_SIZE+", 0)":"translate(0, "+index*this.SQUARE_SIZE+")"},getMonthLabelPostion:function(month){var position={x:0,y:0};return position.x=this.vertical?3:this.SQUARE_SIZE*month.index,position.y=this.vertical?this.SQUARE_SIZE*this.heatmap.weekCount-this.SQUARE_SIZE*month.index-this.SQUARE_SIZE/4:this.SQUARE_SIZE-this.SQUARE_BORDER_SIZE,position}}}},function(module,exports){},function(module,exports){},function(module,exports){module.exports=function(rawScriptExports,compiledTemplate,scopeId,cssModules){var esModule,scriptExports=rawScriptExports=rawScriptExports||{},type=typeof rawScriptExports.default;"object"!==type&&"function"!==type||(esModule=rawScriptExports,scriptExports=rawScriptExports.default);var options="function"==typeof scriptExports?scriptExports.options:scriptExports;if(compiledTemplate&&(options.render=compiledTemplate.render,options.staticRenderFns=compiledTemplate.staticRenderFns),scopeId&&(options._scopeId=scopeId),cssModules){var computed=options.computed||(options.computed={});Object.keys(cssModules).forEach(function(key){var module=cssModules[key];computed[key]=function(){return module}})}return{esModule:esModule,exports:scriptExports,options:options}}},function(module,exports){module.exports={render:function(){var _vm=this,_h=_vm.$createElement,_c=_vm._self._c||_h;return _c("svg",{staticClass:"vch__wrapper",attrs:{viewBox:_vm.viewbox}},[_c("g",{staticClass:"vch__months__labels__wrapper",attrs:{transform:_vm.monthsLabelWrapperTransform[_vm.position]}},_vm._l(_vm.heatmap.firstFullWeekOfMonths,function(month,index){return _c("text",{staticClass:"vch__month__label",attrs:{x:_vm.getMonthLabelPostion(month).x,y:_vm.getMonthLabelPostion(month).y}},[_vm._v(_vm._s(_vm.lo.months[month.value]))])})),_c("g",{staticClass:"vch__days__labels__wrapper",attrs:{transform:_vm.daysLabelWrapperTransform[_vm.position]}},[_c("text",{staticClass:"vch__day__label",attrs:{x:_vm.vertical?1*_vm.SQUARE_SIZE:0,y:_vm.vertical?_vm.SQUARE_SIZE-_vm.SQUARE_BORDER_SIZE:20}},[_vm._v(_vm._s(_vm.lo.days[1]))]),_c("text",{staticClass:"vch__day__label",attrs:{x:_vm.vertical?3*_vm.SQUARE_SIZE:0,y:_vm.vertical?_vm.SQUARE_SIZE-_vm.SQUARE_BORDER_SIZE:44}},[_vm._v(_vm._s(_vm.lo.days[3]))]),_c("text",{staticClass:"vch__day__label",attrs:{x:_vm.vertical?5*_vm.SQUARE_SIZE:0,y:_vm.vertical?_vm.SQUARE_SIZE-_vm.SQUARE_BORDER_SIZE:69}},[_vm._v(_vm._s(_vm.lo.days[5]))])]),_c("g",{staticClass:"vch__legend__wrapper",attrs:{transform:_vm.legendWrapperTransform[_vm.position]}},[_c("text",{attrs:{x:_vm.vertical?1.25*_vm.SQUARE_SIZE:-25,y:_vm.vertical?8:_vm.SQUARE_SIZE+1}},[_vm._v(_vm._s(_vm.lo.less))]),_vm._l(_vm.rangeColor,function(color,index){return _c("rect",{key:index,style:{fill:color},attrs:{width:_vm.SQUARE_SIZE-_vm.SQUARE_BORDER_SIZE,height:_vm.SQUARE_SIZE-_vm.SQUARE_BORDER_SIZE,x:_vm.vertical?1.75*_vm.SQUARE_SIZE:_vm.SQUARE_SIZE*index,y:_vm.vertical?_vm.SQUARE_SIZE*(index+1):5}})}),_c("text",{attrs:{x:_vm.vertical?1.25*_vm.SQUARE_SIZE:_vm.SQUARE_SIZE*_vm.rangeColor.length+1,y:_vm.vertical?_vm.SQUARE_SIZE*(_vm.rangeColor.length+2)-_vm.SQUARE_BORDER_SIZE:_vm.SQUARE_SIZE+1}},[_vm._v(_vm._s(_vm.lo.more))])],2),_c("g",{staticClass:"vch__year__wrapper",attrs:{transform:_vm.yearWrapperTransform}},_vm._l(_vm.heatmap.calendar,function(week,weekIndex){return _c("g",{key:weekIndex,staticClass:"vch__month__wrapper",attrs:{transform:_vm.getWeekPosition(weekIndex)}},_vm._l(week,function(day,dayIndex){return day.date<_vm.now?_c("rect",{directives:[{name:"tooltip",rawName:"v-tooltip",value:_vm.tooltipOptions(day),expression:"tooltipOptions(day)"}],key:dayIndex,staticClass:"vch__day__square",style:{fill:_vm.rangeColor[day.colorIndex]},attrs:{transform:_vm.getDayPosition(dayIndex),width:_vm.SQUARE_SIZE-_vm.SQUARE_BORDER_SIZE,height:_vm.SQUARE_SIZE-_vm.SQUARE_BORDER_SIZE},on:{click:function($event){_vm.$emit("day-click",day)}}}):_vm._e()}))}))])},staticRenderFns:[]}}])}); \ No newline at end of file diff --git a/public/vendor/plugins/vue-calendar-heatmap/vue-calendar-heatmap.css b/public/vendor/plugins/vue-calendar-heatmap/vue-calendar-heatmap.css deleted file mode 100644 index 6a05bbb86..000000000 --- a/public/vendor/plugins/vue-calendar-heatmap/vue-calendar-heatmap.css +++ /dev/null @@ -1,112 +0,0 @@ - -svg.vch__wrapper[data-v-a9cfea66] { - font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif; - line-height: 10px; -} -svg.vch__wrapper .vch__months__labels__wrapper text.vch__month__label[data-v-a9cfea66] { - font-size: 10px; -} -svg.vch__wrapper .vch__days__labels__wrapper text.vch__day__label[data-v-a9cfea66], -svg.vch__wrapper .vch__legend__wrapper text[data-v-a9cfea66] { - font-size: 9px; -} -svg.vch__wrapper .vch__months__labels__wrapper text.vch__month__label[data-v-a9cfea66], -svg.vch__wrapper .vch__days__labels__wrapper text.vch__day__label[data-v-a9cfea66], -svg.vch__wrapper .vch__legend__wrapper text[data-v-a9cfea66] { - fill: #767676; -} -svg.vch__wrapper rect.vch__day__square[data-v-a9cfea66]:hover { - stroke: #555; - stroke-width: 1px; -} -svg.vch__wrapper rect.vch__day__square[data-v-a9cfea66]:focus { - outline: none; -} - -.vue-tooltip-theme.tooltip { - display: block !important; - z-index: 10000; -} -.vue-tooltip-theme.tooltip .tooltip-inner { - background: rgba(0, 0, 0, .7); - border-radius: 3px; - color: #ebedf0; - font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif; - font-size: 12px; - line-height: 16px; - padding: 14px 10px; -} -.vue-tooltip-theme.tooltip .tooltip-inner b { - color: white; -} -.vue-tooltip-theme.tooltip .tooltip-arrow { - width: 0; - height: 0; - border-style: solid; - position: absolute; - margin: 5px; - border-color: black; - z-index: 1; -} -.vue-tooltip-theme.tooltip[x-placement^="top"] { - margin-bottom: 5px; -} -.vue-tooltip-theme.tooltip[x-placement^="top"] .tooltip-arrow { - border-width: 5px 5px 0 5px; - border-left-color: transparent !important; - border-right-color: transparent !important; - border-bottom-color: transparent !important; - bottom: -5px; - left: calc(50% - 5px); - margin-top: 0; - margin-bottom: 0; -} -.vue-tooltip-theme.tooltip[x-placement^="bottom"] { - margin-top: 5px; -} -.vue-tooltip-theme.tooltip[x-placement^="bottom"] .tooltip-arrow { - border-width: 0 5px 5px 5px; - border-left-color: transparent !important; - border-right-color: transparent !important; - border-top-color: transparent !important; - top: -5px; - left: calc(50% - 5px); - margin-top: 0; - margin-bottom: 0; -} -.vue-tooltip-theme.tooltip[x-placement^="right"] { - margin-left: 5px; -} -.vue-tooltip-theme.tooltip[x-placement^="right"] .tooltip-arrow { - border-width: 5px 5px 5px 0; - border-left-color: transparent !important; - border-top-color: transparent !important; - border-bottom-color: transparent !important; - left: -5px; - top: calc(50% - 5px); - margin-left: 0; - margin-right: 0; -} -.vue-tooltip-theme.tooltip[x-placement^="left"] { - margin-right: 5px; -} -.vue-tooltip-theme.tooltip[x-placement^="left"] .tooltip-arrow { - border-width: 5px 0 5px 5px; - border-top-color: transparent !important; - border-right-color: transparent !important; - border-bottom-color: transparent !important; - right: -5px; - top: calc(50% - 5px); - margin-left: 0; - margin-right: 0; -} -.vue-tooltip-theme.tooltip[aria-hidden='true'] { - visibility: hidden; - opacity: 0; - transition: opacity .15s, visibility .15s; -} -.vue-tooltip-theme.tooltip[aria-hidden='false'] { - visibility: visible; - opacity: 1; - transition: opacity .15s; -} diff --git a/public/vendor/plugins/vue/LICENSE b/public/vendor/plugins/vue/LICENSE deleted file mode 100644 index b65dd9e62..000000000 --- a/public/vendor/plugins/vue/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2013-present, Yuxi (Evan) You - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. diff --git a/public/vendor/plugins/vue/vue.min.js b/public/vendor/plugins/vue/vue.min.js deleted file mode 100644 index 0cc6c8ba1..000000000 --- a/public/vendor/plugins/vue/vue.min.js +++ /dev/null @@ -1,6 +0,0 @@ -/*! - * Vue.js v2.6.6 - * (c) 2014-2019 Evan You - * Released under the MIT License. - */ -!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e=e||self).Vue=t()}(this,function(){"use strict";var e=Object.freeze({});function t(e){return null==e}function n(e){return null!=e}function r(e){return!0===e}function i(e){return"string"==typeof e||"number"==typeof e||"symbol"==typeof e||"boolean"==typeof e}function o(e){return null!==e&&"object"==typeof e}var a=Object.prototype.toString;function s(e){return"[object Object]"===a.call(e)}function c(e){var t=parseFloat(String(e));return t>=0&&Math.floor(t)===t&&isFinite(e)}function u(e){return n(e)&&"function"==typeof e.then&&"function"==typeof e.catch}function l(e){return null==e?"":Array.isArray(e)||s(e)&&e.toString===a?JSON.stringify(e,null,2):String(e)}function f(e){var t=parseFloat(e);return isNaN(t)?e:t}function p(e,t){for(var n=Object.create(null),r=e.split(","),i=0;i-1)return e.splice(n,1)}}var m=Object.prototype.hasOwnProperty;function y(e,t){return m.call(e,t)}function g(e){var t=Object.create(null);return function(n){return t[n]||(t[n]=e(n))}}var _=/-(\w)/g,b=g(function(e){return e.replace(_,function(e,t){return t?t.toUpperCase():""})}),$=g(function(e){return e.charAt(0).toUpperCase()+e.slice(1)}),w=/\B([A-Z])/g,x=g(function(e){return e.replace(w,"-$1").toLowerCase()});var C=Function.prototype.bind?function(e,t){return e.bind(t)}:function(e,t){function n(n){var r=arguments.length;return r?r>1?e.apply(t,arguments):e.call(t,n):e.call(t)}return n._length=e.length,n};function A(e,t){t=t||0;for(var n=e.length-t,r=new Array(n);n--;)r[n]=e[n+t];return r}function k(e,t){for(var n in t)e[n]=t[n];return e}function O(e){for(var t={},n=0;n0,W=K&&K.indexOf("edge/")>0,Z=(K&&K.indexOf("android"),K&&/iphone|ipad|ipod|ios/.test(K)||"ios"===V),G=(K&&/chrome\/\d+/.test(K),K&&/phantomjs/.test(K),K&&K.match(/firefox\/(\d+)/)),X={}.watch,Y=!1;if(U)try{var Q={};Object.defineProperty(Q,"passive",{get:function(){Y=!0}}),window.addEventListener("test-passive",null,Q)}catch(e){}var ee=function(){return void 0===H&&(H=!U&&!z&&"undefined"!=typeof global&&(global.process&&"server"===global.process.env.VUE_ENV)),H},te=U&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function ne(e){return"function"==typeof e&&/native code/.test(e.toString())}var re,ie="undefined"!=typeof Symbol&&ne(Symbol)&&"undefined"!=typeof Reflect&&ne(Reflect.ownKeys);re="undefined"!=typeof Set&&ne(Set)?Set:function(){function e(){this.set=Object.create(null)}return e.prototype.has=function(e){return!0===this.set[e]},e.prototype.add=function(e){this.set[e]=!0},e.prototype.clear=function(){this.set=Object.create(null)},e}();var oe=S,ae=0,se=function(){this.id=ae++,this.subs=[]};se.prototype.addSub=function(e){this.subs.push(e)},se.prototype.removeSub=function(e){h(this.subs,e)},se.prototype.depend=function(){se.target&&se.target.addDep(this)},se.prototype.notify=function(){for(var e=this.subs.slice(),t=0,n=e.length;t-1)if(o&&!y(i,"default"))a=!1;else if(""===a||a===x(e)){var c=Pe(String,i.type);(c<0||s0&&(at((u=e(u,(a||"")+"_"+c))[0])&&at(f)&&(s[l]=ve(f.text+u[0].text),u.shift()),s.push.apply(s,u)):i(u)?at(f)?s[l]=ve(f.text+u):""!==u&&s.push(ve(u)):at(u)&&at(f)?s[l]=ve(f.text+u.text):(r(o._isVList)&&n(u.tag)&&t(u.key)&&n(a)&&(u.key="__vlist"+a+"_"+c+"__"),s.push(u)));return s}(e):void 0}function at(e){return n(e)&&n(e.text)&&!1===e.isComment}function st(e,t){if(e){for(var n=Object.create(null),r=ie?Reflect.ownKeys(e):Object.keys(e),i=0;idocument.createEvent("Event").timeStamp&&(an=function(){return performance.now()});var cn=0,un=function(e,t,n,r,i){this.vm=e,i&&(e._watcher=this),e._watchers.push(this),r?(this.deep=!!r.deep,this.user=!!r.user,this.lazy=!!r.lazy,this.sync=!!r.sync,this.before=r.before):this.deep=this.user=this.lazy=this.sync=!1,this.cb=n,this.id=++cn,this.active=!0,this.dirty=this.lazy,this.deps=[],this.newDeps=[],this.depIds=new re,this.newDepIds=new re,this.expression="","function"==typeof t?this.getter=t:(this.getter=function(e){if(!F.test(e)){var t=e.split(".");return function(e){for(var n=0;nrn&&Yt[n].id>e.id;)n--;Yt.splice(n+1,0,e)}else Yt.push(e);tn||(tn=!0,Xe(sn))}}(this)},un.prototype.run=function(){if(this.active){var e=this.get();if(e!==this.value||o(e)||this.deep){var t=this.value;if(this.value=e,this.user)try{this.cb.call(this.vm,e,t)}catch(e){Re(e,this.vm,'callback for watcher "'+this.expression+'"')}else this.cb.call(this.vm,e,t)}}},un.prototype.evaluate=function(){this.value=this.get(),this.dirty=!1},un.prototype.depend=function(){for(var e=this.deps.length;e--;)this.deps[e].depend()},un.prototype.teardown=function(){if(this.active){this.vm._isBeingDestroyed||h(this.vm._watchers,this);for(var e=this.deps.length;e--;)this.deps[e].removeSub(this);this.active=!1}};var ln={enumerable:!0,configurable:!0,get:S,set:S};function fn(e,t,n){ln.get=function(){return this[t][n]},ln.set=function(e){this[t][n]=e},Object.defineProperty(e,n,ln)}function pn(e){e._watchers=[];var t=e.$options;t.props&&function(e,t){var n=e.$options.propsData||{},r=e._props={},i=e.$options._propKeys=[];e.$parent&&be(!1);var o=function(o){i.push(o);var a=Me(o,t,n,e);xe(r,o,a),o in e||fn(e,"_props",o)};for(var a in t)o(a);be(!0)}(e,t.props),t.methods&&function(e,t){e.$options.props;for(var n in t)e[n]="function"!=typeof t[n]?S:C(t[n],e)}(e,t.methods),t.data?function(e){var t=e.$options.data;s(t=e._data="function"==typeof t?function(e,t){ue();try{return e.call(t,t)}catch(e){return Re(e,t,"data()"),{}}finally{le()}}(t,e):t||{})||(t={});var n=Object.keys(t),r=e.$options.props,i=(e.$options.methods,n.length);for(;i--;){var o=n[i];r&&y(r,o)||(a=void 0,36!==(a=(o+"").charCodeAt(0))&&95!==a&&fn(e,"_data",o))}var a;we(t,!0)}(e):we(e._data={},!0),t.computed&&function(e,t){var n=e._computedWatchers=Object.create(null),r=ee();for(var i in t){var o=t[i],a="function"==typeof o?o:o.get;r||(n[i]=new un(e,a||S,S,dn)),i in e||vn(e,i,o)}}(e,t.computed),t.watch&&t.watch!==X&&function(e,t){for(var n in t){var r=t[n];if(Array.isArray(r))for(var i=0;i-1:"string"==typeof e?e.split(",").indexOf(t)>-1:(n=e,"[object RegExp]"===a.call(n)&&e.test(t));var n}function Cn(e,t){var n=e.cache,r=e.keys,i=e._vnode;for(var o in n){var a=n[o];if(a){var s=wn(a.componentOptions);s&&!t(s)&&An(n,o,r,i)}}}function An(e,t,n,r){var i=e[t];!i||r&&i.tag===r.tag||i.componentInstance.$destroy(),e[t]=null,h(n,t)}!function(t){t.prototype._init=function(t){var n=this;n._uid=gn++,n._isVue=!0,t&&t._isComponent?function(e,t){var n=e.$options=Object.create(e.constructor.options),r=t._parentVnode;n.parent=t.parent,n._parentVnode=r;var i=r.componentOptions;n.propsData=i.propsData,n._parentListeners=i.listeners,n._renderChildren=i.children,n._componentTag=i.tag,t.render&&(n.render=t.render,n.staticRenderFns=t.staticRenderFns)}(n,t):n.$options=Ne(_n(n.constructor),t||{},n),n._renderProxy=n,n._self=n,function(e){var t=e.$options,n=t.parent;if(n&&!t.abstract){for(;n.$options.abstract&&n.$parent;)n=n.$parent;n.$children.push(e)}e.$parent=n,e.$root=n?n.$root:e,e.$children=[],e.$refs={},e._watcher=null,e._inactive=null,e._directInactive=!1,e._isMounted=!1,e._isDestroyed=!1,e._isBeingDestroyed=!1}(n),function(e){e._events=Object.create(null),e._hasHookEvent=!1;var t=e.$options._parentListeners;t&&Jt(e,t)}(n),function(t){t._vnode=null,t._staticTrees=null;var n=t.$options,r=t.$vnode=n._parentVnode,i=r&&r.context;t.$slots=ct(n._renderChildren,i),t.$scopedSlots=e,t._c=function(e,n,r,i){return Pt(t,e,n,r,i,!1)},t.$createElement=function(e,n,r,i){return Pt(t,e,n,r,i,!0)};var o=r&&r.data;xe(t,"$attrs",o&&o.attrs||e,null,!0),xe(t,"$listeners",n._parentListeners||e,null,!0)}(n),Xt(n,"beforeCreate"),function(e){var t=st(e.$options.inject,e);t&&(be(!1),Object.keys(t).forEach(function(n){xe(e,n,t[n])}),be(!0))}(n),pn(n),function(e){var t=e.$options.provide;t&&(e._provided="function"==typeof t?t.call(e):t)}(n),Xt(n,"created"),n.$options.el&&n.$mount(n.$options.el)}}(bn),function(e){var t={get:function(){return this._data}},n={get:function(){return this._props}};Object.defineProperty(e.prototype,"$data",t),Object.defineProperty(e.prototype,"$props",n),e.prototype.$set=Ce,e.prototype.$delete=Ae,e.prototype.$watch=function(e,t,n){if(s(t))return yn(this,e,t,n);(n=n||{}).user=!0;var r=new un(this,e,t,n);if(n.immediate)try{t.call(this,r.value)}catch(e){Re(e,this,'callback for immediate watcher "'+r.expression+'"')}return function(){r.teardown()}}}(bn),function(e){var t=/^hook:/;e.prototype.$on=function(e,n){var r=this;if(Array.isArray(e))for(var i=0,o=e.length;i1?A(t):t;for(var n=A(arguments,1),r='event handler for "'+e+'"',i=0,o=t.length;iparseInt(this.max)&&An(a,s[0],s,this._vnode)),t.data.keepAlive=!0}return t||e&&e[0]}}};!function(e){var t={get:function(){return P}};Object.defineProperty(e,"config",t),e.util={warn:oe,extend:k,mergeOptions:Ne,defineReactive:xe},e.set=Ce,e.delete=Ae,e.nextTick=Xe,e.observable=function(e){return we(e),e},e.options=Object.create(null),I.forEach(function(t){e.options[t+"s"]=Object.create(null)}),e.options._base=e,k(e.options.components,On),function(e){e.use=function(e){var t=this._installedPlugins||(this._installedPlugins=[]);if(t.indexOf(e)>-1)return this;var n=A(arguments,1);return n.unshift(this),"function"==typeof e.install?e.install.apply(e,n):"function"==typeof e&&e.apply(null,n),t.push(e),this}}(e),function(e){e.mixin=function(e){return this.options=Ne(this.options,e),this}}(e),$n(e),function(e){I.forEach(function(t){e[t]=function(e,n){return n?("component"===t&&s(n)&&(n.name=n.name||e,n=this.options._base.extend(n)),"directive"===t&&"function"==typeof n&&(n={bind:n,update:n}),this.options[t+"s"][e]=n,n):this.options[t+"s"][e]}})}(e)}(bn),Object.defineProperty(bn.prototype,"$isServer",{get:ee}),Object.defineProperty(bn.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(bn,"FunctionalRenderContext",{value:St}),bn.version="2.6.6";var Sn=p("style,class"),Tn=p("input,textarea,option,select,progress"),En=function(e,t,n){return"value"===n&&Tn(e)&&"button"!==t||"selected"===n&&"option"===e||"checked"===n&&"input"===e||"muted"===n&&"video"===e},jn=p("contenteditable,draggable,spellcheck"),Nn=p("events,caret,typing,plaintext-only"),Ln=function(e,t){return Rn(t)||"false"===t?"false":"contenteditable"===e&&Nn(t)?t:"true"},Mn=p("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,translate,truespeed,typemustmatch,visible"),In="http://www.w3.org/1999/xlink",Dn=function(e){return":"===e.charAt(5)&&"xlink"===e.slice(0,5)},Pn=function(e){return Dn(e)?e.slice(6,e.length):""},Rn=function(e){return null==e||!1===e};function Fn(e){for(var t=e.data,r=e,i=e;n(i.componentInstance);)(i=i.componentInstance._vnode)&&i.data&&(t=Hn(i.data,t));for(;n(r=r.parent);)r&&r.data&&(t=Hn(t,r.data));return function(e,t){if(n(e)||n(t))return Bn(e,Un(t));return""}(t.staticClass,t.class)}function Hn(e,t){return{staticClass:Bn(e.staticClass,t.staticClass),class:n(e.class)?[e.class,t.class]:t.class}}function Bn(e,t){return e?t?e+" "+t:e:t||""}function Un(e){return Array.isArray(e)?function(e){for(var t,r="",i=0,o=e.length;i-1?dr(e,t,n):Mn(t)?Rn(n)?e.removeAttribute(t):(n="allowfullscreen"===t&&"EMBED"===e.tagName?"true":t,e.setAttribute(t,n)):jn(t)?e.setAttribute(t,Ln(t,n)):Dn(t)?Rn(n)?e.removeAttributeNS(In,Pn(t)):e.setAttributeNS(In,t,n):dr(e,t,n)}function dr(e,t,n){if(Rn(n))e.removeAttribute(t);else{if(J&&!q&&"TEXTAREA"===e.tagName&&"placeholder"===t&&""!==n&&!e.__ieph){var r=function(t){t.stopImmediatePropagation(),e.removeEventListener("input",r)};e.addEventListener("input",r),e.__ieph=!0}e.setAttribute(t,n)}}var vr={create:fr,update:fr};function hr(e,r){var i=r.elm,o=r.data,a=e.data;if(!(t(o.staticClass)&&t(o.class)&&(t(a)||t(a.staticClass)&&t(a.class)))){var s=Fn(r),c=i._transitionClasses;n(c)&&(s=Bn(s,Un(c))),s!==i._prevClass&&(i.setAttribute("class",s),i._prevClass=s)}}var mr,yr,gr,_r,br,$r,wr={create:hr,update:hr},xr=/[\w).+\-_$\]]/;function Cr(e){var t,n,r,i,o,a=!1,s=!1,c=!1,u=!1,l=0,f=0,p=0,d=0;for(r=0;r=0&&" "===(h=e.charAt(v));v--);h&&xr.test(h)||(u=!0)}}else void 0===i?(d=r+1,i=e.slice(0,r).trim()):m();function m(){(o||(o=[])).push(e.slice(d,r).trim()),d=r+1}if(void 0===i?i=e.slice(0,r).trim():0!==d&&m(),o)for(r=0;r-1?{exp:e.slice(0,_r),key:'"'+e.slice(_r+1)+'"'}:{exp:e,key:null};yr=e,_r=br=$r=0;for(;!Br();)Ur(gr=Hr())?Vr(gr):91===gr&&zr(gr);return{exp:e.slice(0,br),key:e.slice(br+1,$r)}}(e);return null===n.key?e+"="+t:"$set("+n.exp+", "+n.key+", "+t+")"}function Hr(){return yr.charCodeAt(++_r)}function Br(){return _r>=mr}function Ur(e){return 34===e||39===e}function zr(e){var t=1;for(br=_r;!Br();)if(Ur(e=Hr()))Vr(e);else if(91===e&&t++,93===e&&t--,0===t){$r=_r;break}}function Vr(e){for(var t=e;!Br()&&(e=Hr())!==t;);}var Kr,Jr="__r",qr="__c";function Wr(e,t,n){var r=Kr;return function i(){null!==t.apply(null,arguments)&&Xr(e,i,n,r)}}var Zr=ze&&!(G&&Number(G[1])<=53);function Gr(e,t,n,r){if(Zr){var i=on,o=t;t=o._wrapper=function(e){if(e.target===e.currentTarget||e.timeStamp>=i||0===e.timeStamp||e.target.ownerDocument!==document)return o.apply(this,arguments)}}Kr.addEventListener(e,t,Y?{capture:n,passive:r}:n)}function Xr(e,t,n,r){(r||Kr).removeEventListener(e,t._wrapper||t,n)}function Yr(e,r){if(!t(e.data.on)||!t(r.data.on)){var i=r.data.on||{},o=e.data.on||{};Kr=r.elm,function(e){if(n(e[Jr])){var t=J?"change":"input";e[t]=[].concat(e[Jr],e[t]||[]),delete e[Jr]}n(e[qr])&&(e.change=[].concat(e[qr],e.change||[]),delete e[qr])}(i),nt(i,o,Gr,Xr,Wr,r.context),Kr=void 0}}var Qr,ei={create:Yr,update:Yr};function ti(e,r){if(!t(e.data.domProps)||!t(r.data.domProps)){var i,o,a=r.elm,s=e.data.domProps||{},c=r.data.domProps||{};for(i in n(c.__ob__)&&(c=r.data.domProps=k({},c)),s)t(c[i])&&(a[i]="");for(i in c){if(o=c[i],"textContent"===i||"innerHTML"===i){if(r.children&&(r.children.length=0),o===s[i])continue;1===a.childNodes.length&&a.removeChild(a.childNodes[0])}if("value"===i||o!==s[i])if("value"===i){a._value=o;var u=t(o)?"":String(o);ni(a,u)&&(a.value=u)}else if("innerHTML"===i&&Kn(a.tagName)&&t(a.innerHTML)){(Qr=Qr||document.createElement("div")).innerHTML=""+o+"";for(var l=Qr.firstChild;a.firstChild;)a.removeChild(a.firstChild);for(;l.firstChild;)a.appendChild(l.firstChild)}else a[i]=o}}}function ni(e,t){return!e.composing&&("OPTION"===e.tagName||function(e,t){var n=!0;try{n=document.activeElement!==e}catch(e){}return n&&e.value!==t}(e,t)||function(e,t){var r=e.value,i=e._vModifiers;if(n(i)){if(i.number)return f(r)!==f(t);if(i.trim)return r.trim()!==t.trim()}return r!==t}(e,t))}var ri={create:ti,update:ti},ii=g(function(e){var t={},n=/:(.+)/;return e.split(/;(?![^(]*\))/g).forEach(function(e){if(e){var r=e.split(n);r.length>1&&(t[r[0].trim()]=r[1].trim())}}),t});function oi(e){var t=ai(e.style);return e.staticStyle?k(e.staticStyle,t):t}function ai(e){return Array.isArray(e)?O(e):"string"==typeof e?ii(e):e}var si,ci=/^--/,ui=/\s*!important$/,li=function(e,t,n){if(ci.test(t))e.style.setProperty(t,n);else if(ui.test(n))e.style.setProperty(x(t),n.replace(ui,""),"important");else{var r=pi(t);if(Array.isArray(n))for(var i=0,o=n.length;i-1?t.split(hi).forEach(function(t){return e.classList.add(t)}):e.classList.add(t);else{var n=" "+(e.getAttribute("class")||"")+" ";n.indexOf(" "+t+" ")<0&&e.setAttribute("class",(n+t).trim())}}function yi(e,t){if(t&&(t=t.trim()))if(e.classList)t.indexOf(" ")>-1?t.split(hi).forEach(function(t){return e.classList.remove(t)}):e.classList.remove(t),e.classList.length||e.removeAttribute("class");else{for(var n=" "+(e.getAttribute("class")||"")+" ",r=" "+t+" ";n.indexOf(r)>=0;)n=n.replace(r," ");(n=n.trim())?e.setAttribute("class",n):e.removeAttribute("class")}}function gi(e){if(e){if("object"==typeof e){var t={};return!1!==e.css&&k(t,_i(e.name||"v")),k(t,e),t}return"string"==typeof e?_i(e):void 0}}var _i=g(function(e){return{enterClass:e+"-enter",enterToClass:e+"-enter-to",enterActiveClass:e+"-enter-active",leaveClass:e+"-leave",leaveToClass:e+"-leave-to",leaveActiveClass:e+"-leave-active"}}),bi=U&&!q,$i="transition",wi="animation",xi="transition",Ci="transitionend",Ai="animation",ki="animationend";bi&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(xi="WebkitTransition",Ci="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(Ai="WebkitAnimation",ki="webkitAnimationEnd"));var Oi=U?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(e){return e()};function Si(e){Oi(function(){Oi(e)})}function Ti(e,t){var n=e._transitionClasses||(e._transitionClasses=[]);n.indexOf(t)<0&&(n.push(t),mi(e,t))}function Ei(e,t){e._transitionClasses&&h(e._transitionClasses,t),yi(e,t)}function ji(e,t,n){var r=Li(e,t),i=r.type,o=r.timeout,a=r.propCount;if(!i)return n();var s=i===$i?Ci:ki,c=0,u=function(){e.removeEventListener(s,l),n()},l=function(t){t.target===e&&++c>=a&&u()};setTimeout(function(){c0&&(n=$i,l=a,f=o.length):t===wi?u>0&&(n=wi,l=u,f=c.length):f=(n=(l=Math.max(a,u))>0?a>u?$i:wi:null)?n===$i?o.length:c.length:0,{type:n,timeout:l,propCount:f,hasTransform:n===$i&&Ni.test(r[xi+"Property"])}}function Mi(e,t){for(;e.length1}function Hi(e,t){!0!==t.data.show&&Di(t)}var Bi=function(e){var o,a,s={},c=e.modules,u=e.nodeOps;for(o=0;ov?_(e,t(i[y+1])?null:i[y+1].elm,i,d,y,o):d>y&&$(0,r,p,v)}(p,h,y,o,l):n(y)?(n(e.text)&&u.setTextContent(p,""),_(p,null,y,0,y.length-1,o)):n(h)?$(0,h,0,h.length-1):n(e.text)&&u.setTextContent(p,""):e.text!==i.text&&u.setTextContent(p,i.text),n(v)&&n(d=v.hook)&&n(d=d.postpatch)&&d(e,i)}}}function A(e,t,i){if(r(i)&&n(e.parent))e.parent.data.pendingInsert=t;else for(var o=0;o-1,a.selected!==o&&(a.selected=o);else if(j(Ji(a),r))return void(e.selectedIndex!==s&&(e.selectedIndex=s));i||(e.selectedIndex=-1)}}function Ki(e,t){return t.every(function(t){return!j(t,e)})}function Ji(e){return"_value"in e?e._value:e.value}function qi(e){e.target.composing=!0}function Wi(e){e.target.composing&&(e.target.composing=!1,Zi(e.target,"input"))}function Zi(e,t){var n=document.createEvent("HTMLEvents");n.initEvent(t,!0,!0),e.dispatchEvent(n)}function Gi(e){return!e.componentInstance||e.data&&e.data.transition?e:Gi(e.componentInstance._vnode)}var Xi={model:Ui,show:{bind:function(e,t,n){var r=t.value,i=(n=Gi(n)).data&&n.data.transition,o=e.__vOriginalDisplay="none"===e.style.display?"":e.style.display;r&&i?(n.data.show=!0,Di(n,function(){e.style.display=o})):e.style.display=r?o:"none"},update:function(e,t,n){var r=t.value;!r!=!t.oldValue&&((n=Gi(n)).data&&n.data.transition?(n.data.show=!0,r?Di(n,function(){e.style.display=e.__vOriginalDisplay}):Pi(n,function(){e.style.display="none"})):e.style.display=r?e.__vOriginalDisplay:"none")},unbind:function(e,t,n,r,i){i||(e.style.display=e.__vOriginalDisplay)}}},Yi={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function Qi(e){var t=e&&e.componentOptions;return t&&t.Ctor.options.abstract?Qi(Ut(t.children)):e}function eo(e){var t={},n=e.$options;for(var r in n.propsData)t[r]=e[r];var i=n._parentListeners;for(var o in i)t[b(o)]=i[o];return t}function to(e,t){if(/\d-keep-alive$/.test(t.tag))return e("keep-alive",{props:t.componentOptions.propsData})}var no=function(e){return e.tag||Bt(e)},ro=function(e){return"show"===e.name},io={name:"transition",props:Yi,abstract:!0,render:function(e){var t=this,n=this.$slots.default;if(n&&(n=n.filter(no)).length){var r=this.mode,o=n[0];if(function(e){for(;e=e.parent;)if(e.data.transition)return!0}(this.$vnode))return o;var a=Qi(o);if(!a)return o;if(this._leaving)return to(e,o);var s="__transition-"+this._uid+"-";a.key=null==a.key?a.isComment?s+"comment":s+a.tag:i(a.key)?0===String(a.key).indexOf(s)?a.key:s+a.key:a.key;var c=(a.data||(a.data={})).transition=eo(this),u=this._vnode,l=Qi(u);if(a.data.directives&&a.data.directives.some(ro)&&(a.data.show=!0),l&&l.data&&!function(e,t){return t.key===e.key&&t.tag===e.tag}(a,l)&&!Bt(l)&&(!l.componentInstance||!l.componentInstance._vnode.isComment)){var f=l.data.transition=k({},c);if("out-in"===r)return this._leaving=!0,rt(f,"afterLeave",function(){t._leaving=!1,t.$forceUpdate()}),to(e,o);if("in-out"===r){if(Bt(a))return u;var p,d=function(){p()};rt(c,"afterEnter",d),rt(c,"enterCancelled",d),rt(f,"delayLeave",function(e){p=e})}}return o}}},oo=k({tag:String,moveClass:String},Yi);function ao(e){e.elm._moveCb&&e.elm._moveCb(),e.elm._enterCb&&e.elm._enterCb()}function so(e){e.data.newPos=e.elm.getBoundingClientRect()}function co(e){var t=e.data.pos,n=e.data.newPos,r=t.left-n.left,i=t.top-n.top;if(r||i){e.data.moved=!0;var o=e.elm.style;o.transform=o.WebkitTransform="translate("+r+"px,"+i+"px)",o.transitionDuration="0s"}}delete oo.mode;var uo={Transition:io,TransitionGroup:{props:oo,beforeMount:function(){var e=this,t=this._update;this._update=function(n,r){var i=Wt(e);e.__patch__(e._vnode,e.kept,!1,!0),e._vnode=e.kept,i(),t.call(e,n,r)}},render:function(e){for(var t=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,i=this.$slots.default||[],o=this.children=[],a=eo(this),s=0;s-1?Wn[e]=t.constructor===window.HTMLUnknownElement||t.constructor===window.HTMLElement:Wn[e]=/HTMLUnknownElement/.test(t.toString())},k(bn.options.directives,Xi),k(bn.options.components,uo),bn.prototype.__patch__=U?Bi:S,bn.prototype.$mount=function(e,t){return function(e,t,n){var r;return e.$el=t,e.$options.render||(e.$options.render=de),Xt(e,"beforeMount"),r=function(){e._update(e._render(),n)},new un(e,r,S,{before:function(){e._isMounted&&!e._isDestroyed&&Xt(e,"beforeUpdate")}},!0),n=!1,null==e.$vnode&&(e._isMounted=!0,Xt(e,"mounted")),e}(this,e=e&&U?Gn(e):void 0,t)},U&&setTimeout(function(){P.devtools&&te&&te.emit("init",bn)},0);var lo=/\{\{((?:.|\r?\n)+?)\}\}/g,fo=/[-.*+?^${}()|[\]\/\\]/g,po=g(function(e){var t=e[0].replace(fo,"\\$&"),n=e[1].replace(fo,"\\$&");return new RegExp(t+"((?:.|\\n)+?)"+n,"g")});var vo={staticKeys:["staticClass"],transformNode:function(e,t){t.warn;var n=Ir(e,"class");n&&(e.staticClass=JSON.stringify(n));var r=Mr(e,"class",!1);r&&(e.classBinding=r)},genData:function(e){var t="";return e.staticClass&&(t+="staticClass:"+e.staticClass+","),e.classBinding&&(t+="class:"+e.classBinding+","),t}};var ho,mo={staticKeys:["staticStyle"],transformNode:function(e,t){t.warn;var n=Ir(e,"style");n&&(e.staticStyle=JSON.stringify(ii(n)));var r=Mr(e,"style",!1);r&&(e.styleBinding=r)},genData:function(e){var t="";return e.staticStyle&&(t+="staticStyle:"+e.staticStyle+","),e.styleBinding&&(t+="style:("+e.styleBinding+"),"),t}},yo=function(e){return(ho=ho||document.createElement("div")).innerHTML=e,ho.textContent},go=p("area,base,br,col,embed,frame,hr,img,input,isindex,keygen,link,meta,param,source,track,wbr"),_o=p("colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source"),bo=p("address,article,aside,base,blockquote,body,caption,col,colgroup,dd,details,dialog,div,dl,dt,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,legend,li,menuitem,meta,optgroup,option,param,rp,rt,source,style,summary,tbody,td,tfoot,th,thead,title,tr,track"),$o=/^\s*([^\s"'<>\/=]+)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,wo=/^\s*((?:v-[\w-]+:|@|:|#)\[[^=]+\][^\s"'<>\/=]*)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,xo="[a-zA-Z_][\\-\\.0-9_a-zA-Za-zA-Z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c-\u200d\u203f-\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]*",Co="((?:"+xo+"\\:)?"+xo+")",Ao=new RegExp("^<"+Co),ko=/^\s*(\/?)>/,Oo=new RegExp("^<\\/"+Co+"[^>]*>"),So=/^]+>/i,To=/^",""":'"',"&":"&"," ":"\n"," ":"\t","'":"'"},Mo=/&(?:lt|gt|quot|amp|#39);/g,Io=/&(?:lt|gt|quot|amp|#39|#10|#9);/g,Do=p("pre,textarea",!0),Po=function(e,t){return e&&Do(e)&&"\n"===t[0]};function Ro(e,t){var n=t?Io:Mo;return e.replace(n,function(e){return Lo[e]})}var Fo,Ho,Bo,Uo,zo,Vo,Ko,Jo,qo=/^@|^v-on:/,Wo=/^v-|^@|^:/,Zo=/([\s\S]*?)\s+(?:in|of)\s+([\s\S]*)/,Go=/,([^,\}\]]*)(?:,([^,\}\]]*))?$/,Xo=/^\(|\)$/g,Yo=/^\[.*\]$/,Qo=/:(.*)$/,ea=/^:|^\.|^v-bind:/,ta=/\.[^.]+/g,na=/^v-slot(:|$)|^#/,ra=/[\r\n]/,ia=/\s+/g,oa=g(yo),aa="_empty_";function sa(e,t,n){return{type:1,tag:e,attrsList:t,attrsMap:va(t),rawAttrsMap:{},parent:n,children:[]}}function ca(e,t){Fo=t.warn||kr,Vo=t.isPreTag||T,Ko=t.mustUseProp||T,Jo=t.getTagNamespace||T;t.isReservedTag;Bo=Or(t.modules,"transformNode"),Uo=Or(t.modules,"preTransformNode"),zo=Or(t.modules,"postTransformNode"),Ho=t.delimiters;var n,r,i=[],o=!1!==t.preserveWhitespace,a=t.whitespace,s=!1,c=!1;function u(e){if(l(e),s||e.processed||(e=ua(e,t)),i.length||e===n||n.if&&(e.elseif||e.else)&&fa(n,{exp:e.elseif,block:e}),r&&!e.forbidden)if(e.elseif||e.else)a=e,(u=function(e){var t=e.length;for(;t--;){if(1===e[t].type)return e[t];e.pop()}}(r.children))&&u.if&&fa(u,{exp:a.elseif,block:a});else{if(e.slotScope){var o=e.slotTarget||'"default"';(r.scopedSlots||(r.scopedSlots={}))[o]=e}r.children.push(e),e.parent=r}var a,u;e.children=e.children.filter(function(e){return!e.slotScope}),l(e),e.pre&&(s=!1),Vo(e.tag)&&(c=!1);for(var f=0;f]*>)","i")),p=e.replace(f,function(e,n,r){return u=r.length,jo(l)||"noscript"===l||(n=n.replace(//g,"$1").replace(//g,"$1")),Po(l,n)&&(n=n.slice(1)),t.chars&&t.chars(n),""});c+=e.length-p.length,e=p,k(l,c-u,c)}else{var d=e.indexOf("<");if(0===d){if(To.test(e)){var v=e.indexOf("--\x3e");if(v>=0){t.shouldKeepComment&&t.comment(e.substring(4,v),c,c+v+3),x(v+3);continue}}if(Eo.test(e)){var h=e.indexOf("]>");if(h>=0){x(h+2);continue}}var m=e.match(So);if(m){x(m[0].length);continue}var y=e.match(Oo);if(y){var g=c;x(y[0].length),k(y[1],g,c);continue}var _=C();if(_){A(_),Po(_.tagName,e)&&x(1);continue}}var b=void 0,$=void 0,w=void 0;if(d>=0){for($=e.slice(d);!(Oo.test($)||Ao.test($)||To.test($)||Eo.test($)||(w=$.indexOf("<",1))<0);)d+=w,$=e.slice(d);b=e.substring(0,d)}d<0&&(b=e),b&&x(b.length),t.chars&&b&&t.chars(b,c-b.length,c)}if(e===n){t.chars&&t.chars(e);break}}function x(t){c+=t,e=e.substring(t)}function C(){var t=e.match(Ao);if(t){var n,r,i={tagName:t[1],attrs:[],start:c};for(x(t[0].length);!(n=e.match(ko))&&(r=e.match(wo)||e.match($o));)r.start=c,x(r[0].length),r.end=c,i.attrs.push(r);if(n)return i.unarySlash=n[1],x(n[0].length),i.end=c,i}}function A(e){var n=e.tagName,c=e.unarySlash;o&&("p"===r&&bo(n)&&k(r),s(n)&&r===n&&k(n));for(var u=a(n)||!!c,l=e.attrs.length,f=new Array(l),p=0;p=0&&i[a].lowerCasedTag!==s;a--);else a=0;if(a>=0){for(var u=i.length-1;u>=a;u--)t.end&&t.end(i[u].tag,n,o);i.length=a,r=a&&i[a-1].tag}else"br"===s?t.start&&t.start(e,[],!0,n,o):"p"===s&&(t.start&&t.start(e,[],!1,n,o),t.end&&t.end(e,n,o))}k()}(e,{warn:Fo,expectHTML:t.expectHTML,isUnaryTag:t.isUnaryTag,canBeLeftOpenTag:t.canBeLeftOpenTag,shouldDecodeNewlines:t.shouldDecodeNewlines,shouldDecodeNewlinesForHref:t.shouldDecodeNewlinesForHref,shouldKeepComment:t.comments,outputSourceRange:t.outputSourceRange,start:function(e,o,a,l){var f=r&&r.ns||Jo(e);J&&"svg"===f&&(o=function(e){for(var t=[],n=0;nc&&(s.push(o=e.slice(c,i)),a.push(JSON.stringify(o)));var u=Cr(r[1].trim());a.push("_s("+u+")"),s.push({"@binding":u}),c=i+r[0].length}return c-1"+("true"===o?":("+t+")":":_q("+t+","+o+")")),Lr(e,"change","var $$a="+t+",$$el=$event.target,$$c=$$el.checked?("+o+"):("+a+");if(Array.isArray($$a)){var $$v="+(r?"_n("+i+")":i)+",$$i=_i($$a,$$v);if($$el.checked){$$i<0&&("+Fr(t,"$$a.concat([$$v])")+")}else{$$i>-1&&("+Fr(t,"$$a.slice(0,$$i).concat($$a.slice($$i+1))")+")}}else{"+Fr(t,"$$c")+"}",null,!0)}(e,r,i);else if("input"===o&&"radio"===a)!function(e,t,n){var r=n&&n.number,i=Mr(e,"value")||"null";Sr(e,"checked","_q("+t+","+(i=r?"_n("+i+")":i)+")"),Lr(e,"change",Fr(t,i),null,!0)}(e,r,i);else if("input"===o||"textarea"===o)!function(e,t,n){var r=e.attrsMap.type,i=n||{},o=i.lazy,a=i.number,s=i.trim,c=!o&&"range"!==r,u=o?"change":"range"===r?Jr:"input",l="$event.target.value";s&&(l="$event.target.value.trim()"),a&&(l="_n("+l+")");var f=Fr(t,l);c&&(f="if($event.target.composing)return;"+f),Sr(e,"value","("+t+")"),Lr(e,u,f,null,!0),(s||a)&&Lr(e,"blur","$forceUpdate()")}(e,r,i);else if(!P.isReservedTag(o))return Rr(e,r,i),!1;return!0},text:function(e,t){t.value&&Sr(e,"textContent","_s("+t.value+")",t)},html:function(e,t){t.value&&Sr(e,"innerHTML","_s("+t.value+")",t)}},isPreTag:function(e){return"pre"===e},isUnaryTag:go,mustUseProp:En,canBeLeftOpenTag:_o,isReservedTag:Jn,getTagNamespace:qn,staticKeys:function(e){return e.reduce(function(e,t){return e.concat(t.staticKeys||[])},[]).join(",")}(ga)},wa=g(function(e){return p("type,tag,attrsList,attrsMap,plain,parent,children,attrs,start,end,rawAttrsMap"+(e?","+e:""))});function xa(e,t){e&&(_a=wa(t.staticKeys||""),ba=t.isReservedTag||T,function e(t){t.static=function(e){if(2===e.type)return!1;if(3===e.type)return!0;return!(!e.pre&&(e.hasBindings||e.if||e.for||d(e.tag)||!ba(e.tag)||function(e){for(;e.parent;){if("template"!==(e=e.parent).tag)return!1;if(e.for)return!0}return!1}(e)||!Object.keys(e).every(_a)))}(t);if(1===t.type){if(!ba(t.tag)&&"slot"!==t.tag&&null==t.attrsMap["inline-template"])return;for(var n=0,r=t.children.length;n|^function\s*\(/,Aa=/\([^)]*?\);*$/,ka=/^[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*|\['[^']*?']|\["[^"]*?"]|\[\d+]|\[[A-Za-z_$][\w$]*])*$/,Oa={esc:27,tab:9,enter:13,space:32,up:38,left:37,right:39,down:40,delete:[8,46]},Sa={esc:["Esc","Escape"],tab:"Tab",enter:"Enter",space:[" ","Spacebar"],up:["Up","ArrowUp"],left:["Left","ArrowLeft"],right:["Right","ArrowRight"],down:["Down","ArrowDown"],delete:["Backspace","Delete","Del"]},Ta=function(e){return"if("+e+")return null;"},Ea={stop:"$event.stopPropagation();",prevent:"$event.preventDefault();",self:Ta("$event.target !== $event.currentTarget"),ctrl:Ta("!$event.ctrlKey"),shift:Ta("!$event.shiftKey"),alt:Ta("!$event.altKey"),meta:Ta("!$event.metaKey"),left:Ta("'button' in $event && $event.button !== 0"),middle:Ta("'button' in $event && $event.button !== 1"),right:Ta("'button' in $event && $event.button !== 2")};function ja(e,t){var n=t?"nativeOn:":"on:",r="",i="";for(var o in e){var a=Na(e[o]);e[o]&&e[o].dynamic?i+=o+","+a+",":r+='"'+o+'":'+a+","}return r="{"+r.slice(0,-1)+"}",i?n+"_d("+r+",["+i.slice(0,-1)+"])":n+r}function Na(e){if(!e)return"function(){}";if(Array.isArray(e))return"["+e.map(function(e){return Na(e)}).join(",")+"]";var t=ka.test(e.value),n=Ca.test(e.value),r=ka.test(e.value.replace(Aa,""));if(e.modifiers){var i="",o="",a=[];for(var s in e.modifiers)if(Ea[s])o+=Ea[s],Oa[s]&&a.push(s);else if("exact"===s){var c=e.modifiers;o+=Ta(["ctrl","shift","alt","meta"].filter(function(e){return!c[e]}).map(function(e){return"$event."+e+"Key"}).join("||"))}else a.push(s);return a.length&&(i+=function(e){return"if(!$event.type.indexOf('key')&&"+e.map(La).join("&&")+")return null;"}(a)),o&&(i+=o),"function($event){"+i+(t?"return "+e.value+"($event)":n?"return ("+e.value+")($event)":r?"return "+e.value:e.value)+"}"}return t||n?e.value:"function($event){"+(r?"return "+e.value:e.value)+"}"}function La(e){var t=parseInt(e,10);if(t)return"$event.keyCode!=="+t;var n=Oa[e],r=Sa[e];return"_k($event.keyCode,"+JSON.stringify(e)+","+JSON.stringify(n)+",$event.key,"+JSON.stringify(r)+")"}var Ma={on:function(e,t){e.wrapListeners=function(e){return"_g("+e+","+t.value+")"}},bind:function(e,t){e.wrapData=function(n){return"_b("+n+",'"+e.tag+"',"+t.value+","+(t.modifiers&&t.modifiers.prop?"true":"false")+(t.modifiers&&t.modifiers.sync?",true":"")+")"}},cloak:S},Ia=function(e){this.options=e,this.warn=e.warn||kr,this.transforms=Or(e.modules,"transformCode"),this.dataGenFns=Or(e.modules,"genData"),this.directives=k(k({},Ma),e.directives);var t=e.isReservedTag||T;this.maybeComponent=function(e){return!!e.component||!t(e.tag)},this.onceId=0,this.staticRenderFns=[],this.pre=!1};function Da(e,t){var n=new Ia(t);return{render:"with(this){return "+(e?Pa(e,n):'_c("div")')+"}",staticRenderFns:n.staticRenderFns}}function Pa(e,t){if(e.parent&&(e.pre=e.pre||e.parent.pre),e.staticRoot&&!e.staticProcessed)return Ra(e,t);if(e.once&&!e.onceProcessed)return Fa(e,t);if(e.for&&!e.forProcessed)return Ba(e,t);if(e.if&&!e.ifProcessed)return Ha(e,t);if("template"!==e.tag||e.slotTarget||t.pre){if("slot"===e.tag)return function(e,t){var n=e.slotName||'"default"',r=Ka(e,t),i="_t("+n+(r?","+r:""),o=e.attrs||e.dynamicAttrs?Wa((e.attrs||[]).concat(e.dynamicAttrs||[]).map(function(e){return{name:b(e.name),value:e.value,dynamic:e.dynamic}})):null,a=e.attrsMap["v-bind"];!o&&!a||r||(i+=",null");o&&(i+=","+o);a&&(i+=(o?"":",null")+","+a);return i+")"}(e,t);var n;if(e.component)n=function(e,t,n){var r=t.inlineTemplate?null:Ka(t,n,!0);return"_c("+e+","+Ua(t,n)+(r?","+r:"")+")"}(e.component,e,t);else{var r;(!e.plain||e.pre&&t.maybeComponent(e))&&(r=Ua(e,t));var i=e.inlineTemplate?null:Ka(e,t,!0);n="_c('"+e.tag+"'"+(r?","+r:"")+(i?","+i:"")+")"}for(var o=0;o':'
',Qa.innerHTML.indexOf(" ")>0}var rs=!!U&&ns(!1),is=!!U&&ns(!0),os=g(function(e){var t=Gn(e);return t&&t.innerHTML}),as=bn.prototype.$mount;return bn.prototype.$mount=function(e,t){if((e=e&&Gn(e))===document.body||e===document.documentElement)return this;var n=this.$options;if(!n.render){var r=n.template;if(r)if("string"==typeof r)"#"===r.charAt(0)&&(r=os(r));else{if(!r.nodeType)return this;r=r.innerHTML}else e&&(r=function(e){if(e.outerHTML)return e.outerHTML;var t=document.createElement("div");return t.appendChild(e.cloneNode(!0)),t.innerHTML}(e));if(r){var i=ts(r,{outputSourceRange:!1,shouldDecodeNewlines:rs,shouldDecodeNewlinesForHref:is,delimiters:n.delimiters,comments:n.comments},this),o=i.render,a=i.staticRenderFns;n.render=o,n.staticRenderFns=a}}return as.call(this,e,t)},bn.compile=ts,bn}); \ No newline at end of file diff --git a/templates/base/footer.tmpl b/templates/base/footer.tmpl index 633a34038..fcf2f91b8 100644 --- a/templates/base/footer.tmpl +++ b/templates/base/footer.tmpl @@ -108,16 +108,8 @@ {{end}} - -{{if .EnableHeatmap}} - - - -{{end}} {{template "custom/footer" .}} diff --git a/templates/base/head.tmpl b/templates/base/head.tmpl index 9985b7cb5..491776958 100644 --- a/templates/base/head.tmpl +++ b/templates/base/head.tmpl @@ -93,6 +93,8 @@ SimpleMDE: {{if .RequireSimpleMDE}}true{{else}}false{{end}}, Tribute: {{if .RequireTribute}}true{{else}}false{{end}}, U2F: {{if .RequireU2F}}true{{else}}false{{end}}, + Heatmap: {{if .EnableHeatmap}}true{{else}}false{{end}}, + heatmapUser: {{if .HeatmapUser}}'{{.HeatmapUser}}'{{else}}null{{end}}, }; @@ -124,9 +126,6 @@ {{end}} {{if .RequireDropzone}} -{{end}} -{{if .EnableHeatmap}} - {{end}} {{if .PageIsUserProfile}} diff --git a/templates/pwa/serviceworker_js.tmpl b/templates/pwa/serviceworker_js.tmpl index 5e4cb5798..0fc9ed319 100644 --- a/templates/pwa/serviceworker_js.tmpl +++ b/templates/pwa/serviceworker_js.tmpl @@ -8,6 +8,7 @@ var urlsToCache = [ '{{StaticUrlPrefix}}/js/index.js?v={{MD5 AppVer}}', '{{StaticUrlPrefix}}/js/jquery.js?v={{MD5 AppVer}}', '{{StaticUrlPrefix}}/js/swagger.js?v={{MD5 AppVer}}', + '{{StaticUrlPrefix}}/js/userheatmap.js', '{{StaticUrlPrefix}}/vendor/plugins/codemirror/addon/mode/loadmode.js', '{{StaticUrlPrefix}}/vendor/plugins/codemirror/mode/meta.js', '{{StaticUrlPrefix}}/vendor/plugins/dropzone/dropzone.js', @@ -15,11 +16,11 @@ var urlsToCache = [ '{{StaticUrlPrefix}}/vendor/plugins/jquery.datetimepicker/jquery.datetimepicker.js', '{{StaticUrlPrefix}}/vendor/plugins/jquery.minicolors/jquery.minicolors.min.js', '{{StaticUrlPrefix}}/vendor/plugins/simplemde/simplemde.min.js', - '{{StaticUrlPrefix}}/vendor/plugins/vue/vue.min.js', // css '{{StaticUrlPrefix}}/css/index.css?v={{MD5 AppVer}}', '{{StaticUrlPrefix}}/css/swagger.css?v={{MD5 AppVer}}', + '{{StaticUrlPrefix}}/css/userheatmap.css', '{{StaticUrlPrefix}}/fomantic/semantic.min.css?v={{MD5 AppVer}}', '{{StaticUrlPrefix}}/vendor/assets/font-awesome/css/font-awesome.min.css', '{{StaticUrlPrefix}}/vendor/plugins/dropzone/dropzone.css', diff --git a/web_src/js/features/userHeatmap.js b/web_src/js/features/userHeatmap.js new file mode 100644 index 000000000..4862bc436 --- /dev/null +++ b/web_src/js/features/userHeatmap.js @@ -0,0 +1,98 @@ +import Vue from 'vue'; + +const { AppSubUrl, heatmapUser } = window.config; + +export default async function initHeatmap() { + const el = document.getElementById('user-heatmap'); + if (!el) return; + + const { CalendarHeatmap } = await import(/* webpackChunkName: "userheatmap" */'vue-calendar-heatmap'); + Vue.component('calendarHeatmap', CalendarHeatmap); + + const vueDelimeters = ['${', '}']; + + Vue.component('activity-heatmap', { + delimiters: vueDelimeters, + + props: { + user: { + type: String, + required: true + }, + suburl: { + type: String, + required: true + }, + locale: { + type: Object, + required: true + } + }, + + data() { + return { + isLoading: true, + colorRange: [], + endDate: null, + values: [], + totalContributions: 0, + }; + }, + + mounted() { + this.colorRange = [ + this.getColor(0), + this.getColor(1), + this.getColor(2), + this.getColor(3), + this.getColor(4), + this.getColor(5) + ]; + this.endDate = new Date(); + this.loadHeatmap(this.user); + }, + + methods: { + loadHeatmap(userName) { + const self = this; + $.get(`${this.suburl}/api/v1/users/${userName}/heatmap`, (chartRawData) => { + const chartData = []; + for (let i = 0; i < chartRawData.length; i++) { + self.totalContributions += chartRawData[i].contributions; + chartData[i] = { date: new Date(chartRawData[i].timestamp * 1000), count: chartRawData[i].contributions }; + } + self.values = chartData; + self.isLoading = false; + }); + }, + + getColor(idx) { + const el = document.createElement('div'); + el.className = `heatmap-color-${idx}`; + document.body.appendChild(el); + + const color = getComputedStyle(el).backgroundColor; + + document.body.removeChild(el); + + return color; + } + }, + + template: '

total contributions in the last 12 months

' + }); + + new Vue({ + delimiters: vueDelimeters, + el, + + data: { + suburl: AppSubUrl, + heatmapUser, + locale: { + contributions: 'contributions', + no_contributions: 'No contributions', + }, + }, + }); +} diff --git a/web_src/js/index.js b/web_src/js/index.js index 2b5cc4a52..d4f8bb40e 100644 --- a/web_src/js/index.js +++ b/web_src/js/index.js @@ -1,10 +1,12 @@ /* globals wipPrefixes, issuesTribute, emojiTribute */ -/* exported timeAddManual, toggleStopwatch, cancelStopwatch, initHeatmap */ +/* exported timeAddManual, toggleStopwatch, cancelStopwatch */ /* exported toggleDeadlineForm, setDeadline, updateDeadline, deleteDependencyModal, cancelCodeComment, onOAuthLoginClick */ -import 'jquery.are-you-sure'; import './publicPath.js'; import './polyfills.js'; + +import Vue from 'vue'; +import 'jquery.are-you-sure'; import './vendor/semanticDropdown.js'; import { svg } from './utils.js'; @@ -12,6 +14,7 @@ import initContextPopups from './features/contextPopup.js'; import initHighlight from './features/highlight.js'; import initGitGraph from './features/gitGraph.js'; import initClipboard from './features/clipboard.js'; +import initUserHeatmap from './features/userHeatmap.js'; import ActivityTopAuthors from './components/ActivityTopAuthors.vue'; @@ -2612,6 +2615,7 @@ $(document).ready(async () => { initHighlight(), initGitGraph(), initClipboard(), + initUserHeatmap(), ]); }); @@ -2917,7 +2921,7 @@ function initVueApp() { delimiters: ['${', '}'], el, data: { - searchLimit: (document.querySelector('meta[name=_search_limit]') || {}).content, + searchLimit: Number((document.querySelector('meta[name=_search_limit]') || {}).content), suburl: AppSubUrl, uid: Number((document.querySelector('meta[name=_context_uid]') || {}).content), activityTopAuthors: window.ActivityTopAuthors || [], @@ -2945,102 +2949,6 @@ window.cancelStopwatch = function () { $('#cancel_stopwatch_form').submit(); }; -window.initHeatmap = function (appElementId, heatmapUser, locale) { - const el = document.getElementById(appElementId); - if (!el) { - return; - } - - locale = locale || {}; - - locale.contributions = locale.contributions || 'contributions'; - locale.no_contributions = locale.no_contributions || 'No contributions'; - - const vueDelimeters = ['${', '}']; - - Vue.component('activity-heatmap', { - delimiters: vueDelimeters, - - props: { - user: { - type: String, - required: true - }, - suburl: { - type: String, - required: true - }, - locale: { - type: Object, - required: true - } - }, - - data() { - return { - isLoading: true, - colorRange: [], - endDate: null, - values: [], - totalContributions: 0, - }; - }, - - mounted() { - this.colorRange = [ - this.getColor(0), - this.getColor(1), - this.getColor(2), - this.getColor(3), - this.getColor(4), - this.getColor(5) - ]; - this.endDate = new Date(); - this.loadHeatmap(this.user); - }, - - methods: { - loadHeatmap(userName) { - const self = this; - $.get(`${this.suburl}/api/v1/users/${userName}/heatmap`, (chartRawData) => { - const chartData = []; - for (let i = 0; i < chartRawData.length; i++) { - self.totalContributions += chartRawData[i].contributions; - chartData[i] = { date: new Date(chartRawData[i].timestamp * 1000), count: chartRawData[i].contributions }; - } - self.values = chartData; - self.isLoading = false; - }); - }, - - getColor(idx) { - const el = document.createElement('div'); - el.className = `heatmap-color-${idx}`; - document.body.appendChild(el); - - const color = getComputedStyle(el).backgroundColor; - - document.body.removeChild(el); - - return color; - } - }, - - template: '

total contributions in the last 12 months

' - }); - - new Vue({ - delimiters: vueDelimeters, - el, - - data: { - suburl: AppSubUrl, - heatmapUser, - locale - }, - }); -}; - function initFilterBranchTagDropdown(selector) { $(selector).each(function () { const $dropdown = $(this); diff --git a/webpack.config.js b/webpack.config.js index 4d2db5cf1..eac49f5cd 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -204,6 +204,9 @@ module.exports = { }, resolve: { symlinks: false, + alias: { + vue$: 'vue/dist/vue.esm.js', // needed because vue's default export is the runtime only + }, }, watchOptions: { ignored: [