2017-10-16 18:51:40 +00:00
/ * !
2018-10-26 10:06:08 +00:00
* FullCalendar v3 . 9.0
2017-10-16 18:51:40 +00:00
* Docs & License : https : //fullcalendar.io/
2018-10-26 10:06:08 +00:00
* ( c ) 2018 Adam Shaw
2017-10-16 18:51:40 +00:00
* /
2018-10-26 10:06:08 +00:00
! function ( t , e ) { "object" == typeof exports && "object" == typeof module ? module . exports = e ( require ( "moment" ) , require ( "jquery" ) ) : "function" == typeof define && define . amd ? define ( [ "moment" , "jquery" ] , e ) : "object" == typeof exports ? exports . FullCalendar = e ( require ( "moment" ) , require ( "jquery" ) ) : t . FullCalendar = e ( t . moment , t . jQuery ) } ( "undefined" != typeof self ? self : this , function ( t , e ) { return function ( t ) { function e ( i ) { if ( n [ i ] ) return n [ i ] . exports ; var r = n [ i ] = { i : i , l : ! 1 , exports : { } } ; return t [ i ] . call ( r . exports , r , r . exports , e ) , r . l = ! 0 , r . exports } var n = { } ; return e . m = t , e . c = n , e . d = function ( t , n , i ) { e . o ( t , n ) || Object . defineProperty ( t , n , { configurable : ! 1 , enumerable : ! 0 , get : i } ) } , e . n = function ( t ) { var n = t && t . _ _esModule ? function ( ) { return t . default } : function ( ) { return t } ; return e . d ( n , "a" , n ) , n } , e . o = function ( t , e ) { return Object . prototype . hasOwnProperty . call ( t , e ) } , e . p = "" , e ( e . s = 236 ) } ( [ function ( e , n ) { e . exports = t } , , function ( t , e ) { var n = Object . setPrototypeOf || { _ _proto _ _ : [ ] } instanceof Array && function ( t , e ) { t . _ _proto _ _ = e } || function ( t , e ) { for ( var n in e ) e . hasOwnProperty ( n ) && ( t [ n ] = e [ n ] ) } ; e . _ _extends = function ( t , e ) { function i ( ) { this . constructor = t } n ( t , e ) , t . prototype = null === e ? Object . create ( e ) : ( i . prototype = e . prototype , new i ) } } , function ( t , n ) { t . exports = e } , function ( t , e , n ) { function i ( t , e ) { e . left && t . css ( { "border-left-width" : 1 , "margin-left" : e . left - 1 } ) , e . right && t . css ( { "border-right-width" : 1 , "margin-right" : e . right - 1 } ) } function r ( t ) { t . css ( { "margin-left" : "" , "margin-right" : "" , "border-left-width" : "" , "border-right-width" : "" } ) } function o ( ) { ht ( "body" ) . addClass ( "fc-not-allowed" ) } function s ( ) { ht ( "body" ) . removeClass ( "fc-not-allowed" ) } function a ( t , e , n ) { var i = Math . floor ( e / t . length ) , r = Math . floor ( e - i * ( t . length - 1 ) ) , o = [ ] , s = [ ] , a = [ ] , u = 0 ; l ( t ) , t . each ( function ( e , n ) { var l = e === t . length - 1 ? r : i , d = ht ( n ) . outerHeight ( ! 0 ) ; d < l ? ( o . push ( n ) , s . push ( d ) , a . push ( ht ( n ) . height ( ) ) ) : u += d } ) , n && ( e -= u , i = Math . floor ( e / o . length ) , r = Math . floor ( e - i * ( o . length - 1 ) ) ) , ht ( o ) . each ( function ( t , e ) { var n = t === o . length - 1 ? r : i , l = s [ t ] , u = a [ t ] , d = n - ( l - u ) ; l < n && ht ( e ) . height ( d ) } ) } function l ( t ) { t . height ( "" ) } function u ( t ) { var e = 0 ; return t . find ( "> *" ) . each ( function ( t , n ) { var i = ht ( n ) . outerWidth ( ) ; i > e && ( e = i ) } ) , e ++ , t . width ( e ) , e } function d ( t , e ) { var n , i = t . add ( e ) ; return i . css ( { position : "relative" , left : - 1 } ) , n = t . outerHeight ( ) - e . outerHeight ( ) , i . css ( { position : "" , left : "" } ) , n } function c ( t ) { var e = t . css ( "position" ) , n = t . parents ( ) . filter ( function ( ) { var t = ht ( this ) ; return /(auto|scroll)/ . test ( t . css ( "overflow" ) + t . css ( "overflow-y" ) + t . css ( "overflow-x" ) ) } ) . eq ( 0 ) ; return "fixed" !== e && n . length ? n : ht ( t [ 0 ] . ownerDocument || document ) } function p ( t , e ) { var n = t . offset ( ) , i = n . left - ( e ? e . left : 0 ) , r = n . top - ( e ? e . top : 0 ) ; return { left : i , right : i + t . outerWidth ( ) , top : r , bottom : r + t . outerHeight ( ) } } function h ( t , e ) { var n = t . offset ( ) , i = g ( t ) , r = n . left + b ( t , "border-left-width" ) + i . left - ( e ? e . left : 0 ) , o = n . top + b ( t , "border-top-width" ) + i . top - ( e ? e . top : 0 ) ; return { left : r , right : r + t [ 0 ] . clientWidth , top : o , bottom : o + t [ 0 ] . clientHeight } } function f ( t , e ) { var n = t . offset ( ) , i = n . left + b ( t , "border-left-width" ) + b ( t , "padding-left" ) - ( e ? e . left : 0 ) , r = n . top + b ( t , "border-top-width" ) + b ( t , "padding-top" ) - ( e ? e . top : 0 ) ; return { left : i , right : i + t . width ( ) , top : r , bottom : r + t . height ( ) } } function g ( t ) { var e , n = t [ 0 ] . offsetWidth - t [ 0 ] . clientWidth , i = t [ 0 ] . offsetHeight - t [ 0 ] . clientHeight ; return n = v ( n ) , i = v ( i ) , e = { left : 0 , right : 0 , top : 0 , bottom : i } , y ( ) && "rtl" === t . css ( "direction" ) ? e . left = n : e . right = n , e } function v ( t ) { return t = Math . max ( 0 , t ) , t = Math . round ( t ) } function y ( ) { return null === ft && ( ft = m ( ) ) , ft } function m ( ) { var t = ht ( "<div><div/></div>" ) . css ( { position : "absolute" , top : - 1e3 , left : 0 , border : 0 , padding : 0 , overflow : "scroll" , direction : "rtl" } ) . appendTo ( "body" ) , e = t . children ( ) , n = e . offset ( ) . left > t . offset ( ) . left ; return t . remove ( ) , n } function b ( t , e ) { return parseFloat ( t . css ( e ) ) || 0 } function w ( t ) { return 1 === t . which && ! t . ctrlKey } function D ( t ) { var e = t . originalEvent . touches ; return e && e . length ? e [ 0 ] . pageX : t . pageX } function E ( t ) { var e = t . originalEvent . touches ; return e && e . length ? e [ 0 ] . pageY : t . pageY } function S ( t ) { return /^touch/ . test ( t . type ) } function C ( t ) { t . addClass ( "fc-unselectable" ) . on ( "selectstart" , T ) } function R ( t ) { t . removeClass ( "fc-unselectable" ) . off ( "selectstart" , T ) } function T ( t ) { t . preventDefault ( ) } function M ( t , e ) { var n = { left : Math . max ( t . left
mediumTimeFormat : function ( t ) { return t . longDateFormat ( "LT" ) . replace ( /\s*a$/i , "a" ) } , smallTimeFormat : function ( t ) { return t . longDateFormat ( "LT" ) . replace ( ":mm" , "(:mm)" ) . replace ( /(\Wmm)$/ , "($1)" ) . replace ( /\s*a$/i , "a" ) } , extraSmallTimeFormat : function ( t ) { return t . longDateFormat ( "LT" ) . replace ( ":mm" , "(:mm)" ) . replace ( /(\Wmm)$/ , "($1)" ) . replace ( /\s*a$/i , "t" ) } , hourFormat : function ( t ) { return t . longDateFormat ( "LT" ) . replace ( ":mm" , "" ) . replace ( /(\Wmm)$/ , "" ) . replace ( /\s*a$/i , "a" ) } , noMeridiemTimeFormat : function ( t ) { return t . longDateFormat ( "LT" ) . replace ( /\s*a$/i , "" ) } } , f = { smallDayDateFormat : function ( t ) { return t . isRTL ? "D dd" : "dd D" } , weekFormat : function ( t ) { return t . isRTL ? "w[ " + t . weekNumberTitle + "]" : "[" + t . weekNumberTitle + " ]w" } , smallWeekFormat : function ( t ) { return t . isRTL ? "w[" + t . weekNumberTitle + "]" : "[" + t . weekNumberTitle + "]w" } } ; e . populateInstanceComputableOptions = i , e . datepickerLocale = r , e . locale = o , e . getMomentLocaleData = s , o ( "en" , d . englishDefaults ) } , function ( t , e , n ) { function i ( t ) { return r . mergeProps ( t , o ) } Object . defineProperty ( e , "__esModule" , { value : ! 0 } ) ; var r = n ( 4 ) ; e . globalDefaults = { titleRangeSeparator : " – " , monthYearFormat : "MMMM YYYY" , defaultTimedEventDuration : "02:00:00" , defaultAllDayEventDuration : { days : 1 } , forceEventDuration : ! 1 , nextDayThreshold : "09:00:00" , columnHeader : ! 0 , defaultView : "month" , aspectRatio : 1.35 , header : { left : "title" , center : "" , right : "today prev,next" } , weekends : ! 0 , weekNumbers : ! 1 , weekNumberTitle : "W" , weekNumberCalculation : "local" , scrollTime : "06:00:00" , minTime : "00:00:00" , maxTime : "24:00:00" , showNonCurrentDates : ! 0 , lazyFetching : ! 0 , startParam : "start" , endParam : "end" , timezoneParam : "timezone" , timezone : ! 1 , locale : null , isRTL : ! 1 , buttonText : { prev : "prev" , next : "next" , prevYear : "prev year" , nextYear : "next year" , year : "year" , today : "today" , month : "month" , week : "week" , day : "day" } , allDayText : "all-day" , agendaEventMinHeight : 0 , theme : ! 1 , dragOpacity : . 75 , dragRevertDuration : 500 , dragScroll : ! 0 , unselectAuto : ! 0 , dropAccept : "*" , eventOrder : "title" , eventLimit : ! 1 , eventLimitText : "more" , eventLimitClick : "popover" , dayPopoverFormat : "LL" , handleWindowResize : ! 0 , windowResizeDelay : 100 , longPressDelay : 1e3 } , e . englishDefaults = { dayPopoverFormat : "dddd, MMMM D" } , e . rtlDefaults = { header : { left : "next,prev today" , center : "" , right : "title" } , buttonIcons : { prev : "right-single-arrow" , next : "left-single-arrow" , prevYear : "right-double-arrow" , nextYear : "left-double-arrow" } , themeButtonIcons : { prev : "circle-triangle-e" , next : "circle-triangle-w" , nextYear : "seek-prev" , prevYear : "seek-next" } } ; var o = [ "header" , "footer" , "buttonText" , "buttonIcons" , "themeButtonIcons" ] ; e . mergeOptions = i } , function ( t , e , n ) { Object . defineProperty ( e , "__esModule" , { value : ! 0 } ) ; var i = n ( 2 ) , r = n ( 4 ) , o = function ( ) { function t ( ) { } return t . extend = function ( t ) { var e = function ( t ) { function e ( ) { return null !== t && t . apply ( this , arguments ) || this } return i . _ _extends ( e , t ) , e } ( this ) ; return r . copyOwnProps ( t , e . prototype ) , e } , t . mixin = function ( t ) { r . copyOwnProps ( t , this . prototype ) } , t } ( ) ; e . default = o } , function ( t , e , n ) { Object . defineProperty ( e , "__esModule" , { value : ! 0 } ) ; var i = n ( 3 ) , r = n ( 208 ) , o = function ( ) { function t ( t ) { this . source = t , this . className = [ ] , this . miscProps = { } } return t . parse = function ( t , e ) { var n = new this ( e ) ; return ! ! n . applyProps ( t ) && n } , t . normalizeId = function ( t ) { return String ( t ) } , t . generateId = function ( ) { return "_fc" + t . uuid ++ } , t . prototype . clone = function ( ) { var e = new this . constructor ( this . source ) ; return e . id = this . id , e . rawId = this . rawId , e . uid = this . uid , t . copyVerbatimStandardProps ( this , e ) , e . className = this . className . slice ( ) , e . miscProps = i . extend ( { } , this . miscProps ) , e } , t . prototype . hasInverseRendering = function ( ) { return "inverse-background" === this . getRendering ( ) } , t . prototype . hasBgRendering = function ( ) { var t = this . getRendering ( ) ; return "inverse-background" === t || "background" === t } , t . prototype . getRendering = function ( ) { return null != this . rendering ? this . rendering : this . source . rendering } , t . prototype . getConstraint = function ( ) { return null != this . constraint ? this . constraint : null != this . source . constraint ? this . source . constraint : this . source . calendar . opt ( "eventConstraint" ) } , t . prototype . getOverlap = function ( ) { return null != this . overlap ? this . overlap : null != this . source . overlap ? this . source . overlap : this . source . calendar . opt ( "eventOverlap" ) } , t . prototyp
; return a . startMs - l . startMs || l . endMs - l . startMs - ( a . endMs - a . startMs ) || s . isAllDay - o . isAllDay || r . compareByFieldSpecs ( n . eventDef , i . eventDef , this . view . eventOrderSpecs , n . eventDef . miscProps , i . eventDef . miscProps ) } , t } ( ) ; e . default = o } , , , , , function ( t , e , n ) { function i ( t ) { return "en" !== t . locale ( ) ? t . clone ( ) . locale ( "en" ) : t } function r ( t , e ) { return h ( a ( e ) . fakeFormatString , t ) } function o ( t , e , n , i , r ) { var o ; return t = y . default . parseZone ( t ) , e = y . default . parseZone ( e ) , o = t . localeData ( ) , n = o . longDateFormat ( n ) || n , s ( a ( n ) , t , e , i || " - " , r ) } function s ( t , e , n , i , r ) { var o , s , a , l = t . sameUnits , u = e . clone ( ) . stripZone ( ) , d = n . clone ( ) . stripZone ( ) , c = f ( t . fakeFormatString , e ) , p = f ( t . fakeFormatString , n ) , h = "" , v = "" , y = "" , m = "" , b = "" ; for ( o = 0 ; o < l . length && ( ! l [ o ] || u . isSame ( d , l [ o ] ) ) ; o ++ ) h += c [ o ] ; for ( s = l . length - 1 ; s > o && ( ! l [ s ] || u . isSame ( d , l [ s ] ) ) && ( s - 1 !== o || "." !== c [ s ] ) ; s -- ) v = c [ s ] + v ; for ( a = o ; a <= s ; a ++ ) y += c [ a ] , m += p [ a ] ; return ( y || m ) && ( b = r ? m + i + y : y + i + m ) , g ( h + b + v ) } function a ( t ) { return C [ t ] || ( C [ t ] = l ( t ) ) } function l ( t ) { var e = u ( t ) ; return { fakeFormatString : c ( e ) , sameUnits : p ( e ) } } function u ( t ) { for ( var e , n = [ ] , i = /\[([^\]]*)\]|\(([^\)]*)\)|(LTS|LT|(\w)\4*o?)|([^\w\[\(]+)/g ; e = i . exec ( t ) ; ) e [ 1 ] ? n . push . apply ( n , d ( e [ 1 ] ) ) : e [ 2 ] ? n . push ( { maybe : u ( e [ 2 ] ) } ) : e [ 3 ] ? n . push ( { token : e [ 3 ] } ) : e [ 5 ] && n . push . apply ( n , d ( e [ 5 ] ) ) ; return n } function d ( t ) { return ". " === t ? [ "." , " " ] : [ t ] } function c ( t ) { var e , n , i = [ ] ; for ( e = 0 ; e < t . length ; e ++ ) n = t [ e ] , "string" == typeof n ? i . push ( "[" + n + "]" ) : n . token ? n . token in E ? i . push ( b + "[" + n . token + "]" ) : i . push ( n . token ) : n . maybe && i . push ( w + c ( n . maybe ) + w ) ; return i . join ( m ) } function p ( t ) { var e , n , i , r = [ ] ; for ( e = 0 ; e < t . length ; e ++ ) n = t [ e ] , n . token ? ( i = S [ n . token . charAt ( 0 ) ] , r . push ( i ? i . unit : "second" ) ) : n . maybe ? r . push . apply ( r , p ( n . maybe ) ) : r . push ( null ) ; return r } function h ( t , e ) { return g ( f ( t , e ) . join ( "" ) ) } function f ( t , e ) { var n , i , r = [ ] , o = y . oldMomentFormat ( e , t ) , s = o . split ( m ) ; for ( n = 0 ; n < s . length ; n ++ ) i = s [ n ] , i . charAt ( 0 ) === b ? r . push ( E [ i . substring ( 1 ) ] ( e ) ) : r . push ( i ) ; return r } function g ( t ) { return t . replace ( D , function ( t , e ) { return e . match ( /[1-9]/ ) ? e : "" } ) } function v ( t ) { var e , n , i , r , o = u ( t ) ; for ( e = 0 ; e < o . length ; e ++ ) n = o [ e ] , n . token && ( i = S [ n . token . charAt ( 0 ) ] ) && ( ! r || i . value > r . value ) && ( r = i ) ; return r ? r . unit : null } Object . defineProperty ( e , "__esModule" , { value : ! 0 } ) ; var y = n ( 10 ) ; y . newMomentProto . format = function ( ) { return this . _fullCalendar && arguments [ 0 ] ? r ( this , arguments [ 0 ] ) : this . _ambigTime ? y . oldMomentFormat ( i ( this ) , "YYYY-MM-DD" ) : this . _ambigZone ? y . oldMomentFormat ( i ( this ) , "YYYY-MM-DD[T]HH:mm:ss" ) : this . _fullCalendar ? y . oldMomentFormat ( i ( this ) ) : y . oldMomentProto . format . apply ( this , arguments ) } , y . newMomentProto . toISOString = function ( ) { return this . _ambigTime ? y . oldMomentFormat ( i ( this ) , "YYYY-MM-DD" ) : this . _ambigZone ? y . oldMomentFormat ( i ( this ) , "YYYY-MM-DD[T]HH:mm:ss" ) : this . _fullCalendar ? y . oldMomentProto . toISOString . apply ( i ( this ) , arguments ) : y . oldMomentProto . toISOString . apply ( this , arguments ) } ; var m = "\v" , b = " " , w = " " , D = new RegExp ( w + "([^" + w + "]*)" + w , "g" ) , E = { t : function ( t ) { return y . oldMomentFormat ( t , "a" ) . charAt ( 0 ) } , T : function ( t ) { return y . oldMomentFormat ( t , "A" ) . charAt ( 0 ) } } , S = { Y : { value : 1 , unit : "year" } , M : { value : 2 , unit : "month" } , W : { value : 3 , unit : "week" } , w : { value : 3 , unit : "week" } , D : { value : 4 , unit : "day" } , d : { value : 4 , unit : "day" } } ; e . formatDate = r , e . formatRange = o ; var C = { } ; e . queryMostGranularFormatUnit = v } , function ( t , e , n ) { Object . defineProperty ( e , "__esModule" , { value : ! 0 } ) ; var i = n ( 2 ) , r = n ( 33 ) , o = n ( 11 ) , s = n ( 7 ) , a = function ( t ) { function e ( ) { var e = t . call ( this ) || this ; return e . _watchers = { } , e . _props = { } , e . applyGlobalWatchers ( ) , e . constructed ( ) , e } return i . _ _extends ( e , t ) , e . watch = function ( t ) { for ( var e = [ ] , n = 1 ; n < arguments . length ; n ++ ) e [ n - 1 ] = arguments [ n ] ; this . prototype . hasOwnProperty ( "_globalWatchArgs" ) || ( this . prototype . _globalWatchArgs = Object . create ( this . prototype . _globalWatchArgs ) ) , this . prototype . _globalWatchArgs [ t ] = e } , e . prototype . constructed = function ( ) { } , e . prototype . applyGlobalWatchers = function ( ) { var t , e = this . _globalWatchArgs ; for ( t in e ) this . watch . apply ( this , [ t ] . concat ( e [ t ] ) ) } , e . prototype . has = function ( t ) { return t in this . _props } , e . prototype . get = function ( t ) { return void 0 === t ? this . _props : this . _props [ t ] } , e . prototype . set = function ( t , e ) { var n ; "string" == typeof t ? ( n = { } , n [ t ] = void 0 === e ? null : e ) : n = t , this . setProps ( n ) } , e . prototype . reset = function ( t ) { var e , n = this . _props ,
return t . prototype . getOwnEventSegs . call ( this ) . concat ( this . popoverSegs || [ ] ) } , e . prototype . renderDrag = function ( t , e , n ) { var i ; for ( i = 0 ; i < t . length ; i ++ ) this . renderHighlight ( t [ i ] . componentFootprint ) ; if ( t . length && e && e . component !== this ) return this . helperRenderer . renderEventDraggingFootprints ( t , e , n ) , ! 0 } , e . prototype . unrenderDrag = function ( ) { this . unrenderHighlight ( ) , this . helperRenderer . unrender ( ) } , e . prototype . renderEventResize = function ( t , e , n ) { var i ; for ( i = 0 ; i < t . length ; i ++ ) this . renderHighlight ( t [ i ] . componentFootprint ) ; this . helperRenderer . renderEventResizingFootprints ( t , e , n ) } , e . prototype . unrenderEventResize = function ( ) { this . unrenderHighlight ( ) , this . helperRenderer . unrender ( ) } , e . prototype . removeSegPopover = function ( ) { this . segPopover && this . segPopover . hide ( ) } , e . prototype . limitRows = function ( t ) { var e , n , i = this . eventRenderer . rowStructs || [ ] ; for ( e = 0 ; e < i . length ; e ++ ) this . unlimitRow ( e ) , ! 1 !== ( n = ! ! t && ( "number" == typeof t ? t : this . computeRowLevelLimit ( e ) ) ) && this . limitRow ( e , n ) } , e . prototype . computeRowLevelLimit = function ( t ) { function e ( t , e ) { o = Math . max ( o , r ( e ) . outerHeight ( ) ) } var n , i , o , s = this . rowEls . eq ( t ) , a = s . height ( ) , l = this . eventRenderer . rowStructs [ t ] . tbodyEl . children ( ) ; for ( n = 0 ; n < l . length ; n ++ ) if ( i = l . eq ( n ) . removeClass ( "fc-limited" ) , o = 0 , i . find ( "> td > :first-child" ) . each ( e ) , i . position ( ) . top + o > a ) return n ; return ! 1 } , e . prototype . limitRow = function ( t , e ) { var n , i , o , s , a , l , u , d , c , p , h , f , g , v , y , m = this , b = this . eventRenderer . rowStructs [ t ] , w = [ ] , D = 0 , E = function ( n ) { for ( ; D < n ; ) l = m . getCellSegs ( t , D , e ) , l . length && ( c = i [ e - 1 ] [ D ] , y = m . renderMoreLink ( t , D , l ) , v = r ( "<div/>" ) . append ( y ) , c . append ( v ) , w . push ( v [ 0 ] ) ) , D ++ } ; if ( e && e < b . segLevels . length ) { for ( n = b . segLevels [ e - 1 ] , i = b . cellMatrix , o = b . tbodyEl . children ( ) . slice ( e ) . addClass ( "fc-limited" ) . get ( ) , s = 0 ; s < n . length ; s ++ ) { for ( a = n [ s ] , E ( a . leftCol ) , d = [ ] , u = 0 ; D <= a . rightCol ; ) l = this . getCellSegs ( t , D , e ) , d . push ( l ) , u += l . length , D ++ ; if ( u ) { for ( c = i [ e - 1 ] [ a . leftCol ] , p = c . attr ( "rowspan" ) || 1 , h = [ ] , f = 0 ; f < d . length ; f ++ ) g = r ( '<td class="fc-more-cell"/>' ) . attr ( "rowspan" , p ) , l = d [ f ] , y = this . renderMoreLink ( t , a . leftCol + f , [ a ] . concat ( l ) ) , v = r ( "<div/>" ) . append ( y ) , g . append ( v ) , h . push ( g [ 0 ] ) , w . push ( g [ 0 ] ) ; c . addClass ( "fc-limited" ) . after ( r ( h ) ) , o . push ( c [ 0 ] ) } } E ( this . colCnt ) , b . moreEls = r ( w ) , b . limitedEls = r ( o ) } } , e . prototype . unlimitRow = function ( t ) { var e = this . eventRenderer . rowStructs [ t ] ; e . moreEls && ( e . moreEls . remove ( ) , e . moreEls = null ) , e . limitedEls && ( e . limitedEls . removeClass ( "fc-limited" ) , e . limitedEls = null ) } , e . prototype . renderMoreLink = function ( t , e , n ) { var i = this , o = this . view ; return r ( '<a class="fc-more"/>' ) . text ( this . getMoreLinkText ( n . length ) ) . on ( "click" , function ( s ) { var a = i . opt ( "eventLimitClick" ) , l = i . getCellDate ( t , e ) , u = r ( s . currentTarget ) , d = i . getCellEl ( t , e ) , c = i . getCellSegs ( t , e ) , p = i . resliceDaySegs ( c , l ) , h = i . resliceDaySegs ( n , l ) ; "function" == typeof a && ( a = i . publiclyTrigger ( "eventLimitClick" , { context : o , args : [ { date : l . clone ( ) , dayEl : d , moreEl : u , segs : p , hiddenSegs : h } , s , o ] } ) ) , "popover" === a ? i . showSegPopover ( t , e , u , p ) : "string" == typeof a && o . calendar . zoomTo ( l , a ) } ) } , e . prototype . showSegPopover = function ( t , e , n , i ) { var r , o , s = this , l = this . view , u = n . parent ( ) ; r = 1 === this . rowCnt ? l . el : this . rowEls . eq ( t ) , o = { className : "fc-more-popover " + l . calendar . theme . getClass ( "popover" ) , content : this . renderSegPopoverContent ( t , e , i ) , parentEl : l . el , top : r . offset ( ) . top , autoHide : ! 0 , viewportConstrain : this . opt ( "popoverViewportConstrain" ) , hide : function ( ) { s . popoverSegs && s . triggerBeforeEventSegsDestroyed ( s . popoverSegs ) , s . segPopover . removeElement ( ) , s . segPopover = null , s . popoverSegs = null } } , this . isRTL ? o . right = u . offset ( ) . left + u . outerWidth ( ) + 1 : o . left = u . offset ( ) . left - 1 , this . segPopover = new a . default ( o ) , this . segPopover . show ( ) , this . bindAllSegHandlersToEl ( this . segPopover . el ) , this . triggerAfterEventSegsRendered ( i ) } , e . prototype . renderSegPopoverContent = function ( t , e , n ) { var i , s = this . view , a = s . calendar . theme , l = this . getCellDate ( t , e ) . format ( this . opt ( "dayPopoverFormat" ) ) , u = r ( '<div class="fc-header ' + a . getClass ( "popoverHeader" ) + '"><span class="fc-close ' + a . getIconClass ( "close" ) + '"></span><span class="fc-title">' + o . htmlEscape ( l ) + '</span><div class="fc-clear"/></div><div class="fc-body ' + a . getClass ( "popoverContent" ) + '"><div class="fc-event-container"></div></div>' ) , d = u . find ( ".fc-event-container" ) ; for ( n = this . e
; return this . dateProfile . activeUnzonedRange . containsDate ( t ) ? ( r . push ( "fc-" + a . dayIDs [ t . day ( ) ] ) , i . isDateInOtherMonth ( t , this . dateProfile ) && r . push ( "fc-other-month" ) , n = i . calendar . getNow ( ) , t . isSame ( n , "day" ) ? ( r . push ( "fc-today" ) , ! 0 !== e && r . push ( i . calendar . theme . getClass ( "today" ) ) ) : t < n ? r . push ( "fc-past" ) : r . push ( "fc-future" ) ) : r . push ( "fc-disabled-day" ) , r } , e . prototype . formatRange = function ( t , e , n , i ) { var r = t . end ; return e && ( r = r . clone ( ) . subtract ( 1 ) ) , u . formatRange ( t . start , r , n , i , this . isRTL ) } , e . prototype . currentRangeAs = function ( t ) { return this . _getDateProfile ( ) . currentUnzonedRange . as ( t ) } , e . prototype . computeDayRange = function ( t ) { var e = this . _getCalendar ( ) , n = e . msToUtcMoment ( t . startMs , ! 0 ) , i = e . msToUtcMoment ( t . endMs ) , r = + i . time ( ) , o = i . clone ( ) . stripTime ( ) ; return r && r >= this . nextDayThreshold && o . add ( 1 , "days" ) , o <= n && ( o = n . clone ( ) . add ( 1 , "days" ) ) , { start : n , end : o } } , e . prototype . isMultiDayRange = function ( t ) { var e = this . computeDayRange ( t ) ; return e . end . diff ( e . start , "days" ) > 1 } , e . guid = 0 , e } ( d . default ) ; e . default = p } , function ( t , e , n ) { function i ( t , e ) { return null == e ? t : r . isFunction ( e ) ? t . filter ( e ) : ( e += "" , t . filter ( function ( t ) { return t . id == e || t . _id === e } ) ) } Object . defineProperty ( e , "__esModule" , { value : ! 0 } ) ; var r = n ( 3 ) , o = n ( 0 ) , s = n ( 4 ) , a = n ( 32 ) , l = n ( 238 ) , u = n ( 21 ) , d = n ( 11 ) , c = n ( 7 ) , p = n ( 239 ) , h = n ( 240 ) , f = n ( 241 ) , g = n ( 207 ) , v = n ( 31 ) , y = n ( 10 ) , m = n ( 5 ) , b = n ( 12 ) , w = n ( 17 ) , D = n ( 242 ) , E = n ( 212 ) , S = n ( 38 ) , C = n ( 49 ) , R = n ( 13 ) , T = n ( 37 ) , M = n ( 6 ) , I = n ( 51 ) , H = function ( ) { function t ( t , e ) { this . loadingLevel = 0 , this . ignoreUpdateViewSize = 0 , this . freezeContentHeightDepth = 0 , u . default . needed ( ) , this . el = t , this . viewsByType = { } , this . optionsManager = new h . default ( this , e ) , this . viewSpecManager = new f . default ( this . optionsManager , this ) , this . initMomentInternals ( ) , this . initCurrentDate ( ) , this . initEventManager ( ) , this . constraints = new g . default ( this . eventManager , this ) , this . constructed ( ) } return t . prototype . constructed = function ( ) { } , t . prototype . getView = function ( ) { return this . view } , t . prototype . publiclyTrigger = function ( t , e ) { var n , i , o = this . opt ( t ) ; if ( r . isPlainObject ( e ) ? ( n = e . context , i = e . args ) : r . isArray ( e ) && ( i = e ) , null == n && ( n = this . el [ 0 ] ) , i || ( i = [ ] ) , this . triggerWith ( t , n , i ) , o ) return o . apply ( n , i ) } , t . prototype . hasPublicHandlers = function ( t ) { return this . hasHandlers ( t ) || this . opt ( t ) } , t . prototype . option = function ( t , e ) { var n ; if ( "string" == typeof t ) { if ( void 0 === e ) return this . optionsManager . get ( t ) ; n = { } , n [ t ] = e , this . optionsManager . add ( n ) } else "object" == typeof t && this . optionsManager . add ( t ) } , t . prototype . opt = function ( t ) { return this . optionsManager . get ( t ) } , t . prototype . instantiateView = function ( t ) { var e = this . viewSpecManager . getViewSpec ( t ) ; if ( ! e ) throw new Error ( 'View type "' + t + '" is not valid' ) ; return new e . class ( this , e ) } , t . prototype . isValidViewType = function ( t ) { return Boolean ( this . viewSpecManager . getViewSpec ( t ) ) } , t . prototype . changeView = function ( t , e ) { e && ( e . start && e . end ? this . optionsManager . recordOverrides ( { visibleRange : e } ) : this . currentDate = this . moment ( e ) . stripZone ( ) ) , this . renderView ( t ) } , t . prototype . zoomTo = function ( t , e ) { var n ; e = e || "day" , n = this . viewSpecManager . getViewSpec ( e ) || this . viewSpecManager . getUnitViewSpec ( e ) , this . currentDate = t . clone ( ) , this . renderView ( n ? n . type : null ) } , t . prototype . initCurrentDate = function ( ) { var t = this . opt ( "defaultDate" ) ; this . currentDate = null != t ? this . moment ( t ) . stripZone ( ) : this . getNow ( ) } , t . prototype . prev = function ( ) { var t = this . view , e = t . dateProfileGenerator . buildPrev ( t . get ( "dateProfile" ) ) ; e . isValid && ( this . currentDate = e . date , this . renderView ( ) ) } , t . prototype . next = function ( ) { var t = this . view , e = t . dateProfileGenerator . buildNext ( t . get ( "dateProfile" ) ) ; e . isValid && ( this . currentDate = e . date , this . renderView ( ) ) } , t . prototype . prevYear = function ( ) { this . currentDate . add ( - 1 , "years" ) , this . renderView ( ) } , t . prototype . nextYear = function ( ) { this . currentDate . add ( 1 , "years" ) , this . renderView ( ) } , t . prototype . today = function ( ) { this . currentDate = this . getNow ( ) , this . renderView ( ) } , t . prototype . gotoDate = function ( t ) { this . currentDate = this . moment ( t ) . stripZone ( ) , this . renderView ( ) } , t . prototype . incrementDate = function ( t ) { this . currentDate . add ( o . duration ( t ) ) , this . renderView ( ) } , t . prototype . getDate = function ( ) { return this . applyTimezone ( this . currentDate ) } , t . prototype . pushLoading = function ( ) { this . loadingLevel ++ || this . publiclyTrigger ( "loading" ,
return s . _ _extends ( e , t ) , e . prototype . instantiateTimeGrid = function ( ) { var t = new this . timeGridClass ( this ) ; return u . copyOwnProps ( r , t ) , t } , e . prototype . instantiateDayGrid = function ( ) { var t = new this . dayGridClass ( this ) ; return u . copyOwnProps ( o , t ) , t } , e . prototype . renderSkeleton = function ( ) { var t , e ; this . el . addClass ( "fc-agenda-view" ) . html ( this . renderSkeletonHtml ( ) ) , this . scroller . render ( ) , t = this . scroller . el . addClass ( "fc-time-grid-container" ) , e = l ( '<div class="fc-time-grid" />' ) . appendTo ( t ) , this . el . find ( ".fc-body > tr > td" ) . append ( t ) , this . timeGrid . headContainerEl = this . el . find ( ".fc-head-container" ) , this . timeGrid . setElement ( e ) , this . dayGrid && ( this . dayGrid . setElement ( this . el . find ( ".fc-day-grid" ) ) , this . dayGrid . bottomCoordPadding = this . dayGrid . el . next ( "hr" ) . outerHeight ( ) ) } , e . prototype . unrenderSkeleton = function ( ) { this . timeGrid . removeElement ( ) , this . dayGrid && this . dayGrid . removeElement ( ) , this . scroller . destroy ( ) } , e . prototype . renderSkeletonHtml = function ( ) { var t = this . calendar . theme ; return '<table class="' + t . getClass ( "tableGrid" ) + '">' + ( this . opt ( "columnHeader" ) ? '<thead class="fc-head"><tr><td class="fc-head-container ' + t . getClass ( "widgetHeader" ) + '"> </td></tr></thead>' : "" ) + '<tbody class="fc-body"><tr><td class="' + t . getClass ( "widgetContent" ) + '">' + ( this . dayGrid ? '<div class="fc-day-grid"/><hr class="fc-divider ' + t . getClass ( "widgetHeader" ) + '"/>' : "" ) + "</td></tr></tbody></table>" } , e . prototype . axisStyleAttr = function ( ) { return null != this . axisWidth ? 'style="width:' + this . axisWidth + 'px"' : "" } , e . prototype . getNowIndicatorUnit = function ( ) { return this . timeGrid . getNowIndicatorUnit ( ) } , e . prototype . updateSize = function ( e , n , i ) { var r , o , s ; if ( t . prototype . updateSize . call ( this , e , n , i ) , this . axisWidth = u . matchCellWidths ( this . el . find ( ".fc-axis" ) ) , ! this . timeGrid . colEls ) return void ( n || ( o = this . computeScrollerHeight ( e ) , this . scroller . setHeight ( o ) ) ) ; var a = this . el . find ( ".fc-row:not(.fc-scroller *)" ) ; this . timeGrid . bottomRuleEl . hide ( ) , this . scroller . clear ( ) , u . uncompensateScroll ( a ) , this . dayGrid && ( this . dayGrid . removeSegPopover ( ) , r = this . opt ( "eventLimit" ) , r && "number" != typeof r && ( r = 5 ) , r && this . dayGrid . limitRows ( r ) ) , n || ( o = this . computeScrollerHeight ( e ) , this . scroller . setHeight ( o ) , s = this . scroller . getScrollbarWidths ( ) , ( s . left || s . right ) && ( u . compensateScroll ( a , s ) , o = this . computeScrollerHeight ( e ) , this . scroller . setHeight ( o ) ) , this . scroller . lockOverflow ( s ) , this . timeGrid . getTotalSlatHeight ( ) < o && this . timeGrid . bottomRuleEl . show ( ) ) } , e . prototype . computeScrollerHeight = function ( t ) { return t - u . subtractInnerElHeight ( this . el , this . scroller . el ) } , e . prototype . computeInitialDateScroll = function ( ) { var t = a . duration ( this . opt ( "scrollTime" ) ) , e = this . timeGrid . computeTimeTop ( t ) ; return e = Math . ceil ( e ) , e && e ++ , { top : e } } , e . prototype . queryDateScroll = function ( ) { return { top : this . scroller . getScrollTop ( ) } } , e . prototype . applyDateScroll = function ( t ) { void 0 !== t . top && this . scroller . setScrollTop ( t . top ) } , e . prototype . getHitFootprint = function ( t ) { return t . component . getHitFootprint ( t ) } , e . prototype . getHitEl = function ( t ) { return t . component . getHitEl ( t ) } , e . prototype . executeEventRender = function ( t ) { var e , n , i = { } , r = { } ; for ( e in t ) n = t [ e ] , n . getEventDef ( ) . isAllDay ( ) ? i [ e ] = n : r [ e ] = n ; this . timeGrid . executeEventRender ( r ) , this . dayGrid && this . dayGrid . executeEventRender ( i ) } , e . prototype . renderDrag = function ( t , e , n ) { var r = i ( t ) , o = ! 1 ; return o = this . timeGrid . renderDrag ( r . timed , e , n ) , this . dayGrid && ( o = this . dayGrid . renderDrag ( r . allDay , e , n ) || o ) , o } , e . prototype . renderEventResize = function ( t , e , n ) { var r = i ( t ) ; this . timeGrid . renderEventResize ( r . timed , e , n ) , this . dayGrid && this . dayGrid . renderEventResize ( r . allDay , e , n ) } , e . prototype . renderSelectionFootprint = function ( t ) { t . isAllDay ? this . dayGrid && this . dayGrid . renderSelectionFootprint ( t ) : this . timeGrid . renderSelectionFootprint ( t ) } , e } ( c . default ) ; e . default = f , f . prototype . timeGridClass = p . default , f . prototype . dayGridClass = h . default , r = { renderHeadIntroHtml : function ( ) { var t , e = this . view , n = e . calendar , i = n . msToUtcMoment ( this . dateProfile . renderUnzonedRange . startMs , ! 0 ) ; return this . opt ( "weekNumbers" ) ? ( t = i . format ( this . opt ( "smallWeekFormat" ) ) , '<th class="fc-axis fc-week-number ' + n . theme . getClass ( "widgetHeader" ) + '" ' + e . axisStyleAttr ( ) + ">" + e . buildGotoAnchorHtml ( { date : i , type : "week" , forc
; delete this . eventDefsByUid [ t . uid ] , n && ( r . removeExact ( n , t ) , n . length || delete e [ t . id ] , this . removeEventInstancesForDef ( t ) ) } , t . prototype . getEventInstances = function ( ) { var t , e = this . eventInstanceGroupsById , n = [ ] ; for ( t in e ) n . push . apply ( n , e [ t ] . eventInstances ) ; return n } , t . prototype . getEventInstancesWithId = function ( t ) { var e = this . eventInstanceGroupsById [ t ] ; return e ? e . eventInstances . slice ( ) : [ ] } , t . prototype . getEventInstancesWithoutId = function ( t ) { var e , n = this . eventInstanceGroupsById , i = [ ] ; for ( e in n ) e !== t && i . push . apply ( i , n [ e ] . eventInstances ) ; return i } , t . prototype . addEventInstance = function ( t , e ) { var n = this . eventInstanceGroupsById ; ( n [ e ] || ( n [ e ] = new l . default ) ) . eventInstances . push ( t ) , this . tryRelease ( ) } , t . prototype . removeEventInstancesForDef = function ( t ) { var e , n = this . eventInstanceGroupsById , i = n [ t . id ] ; i && ( e = r . removeMatching ( i . eventInstances , function ( e ) { return e . def === t } ) , i . eventInstances . length || delete n [ t . id ] , e && this . tryRelease ( ) ) } , t . prototype . tryRelease = function ( ) { this . pendingCnt || ( this . freezeDepth ? this . stuntedReleaseCnt ++ : this . release ( ) ) } , t . prototype . release = function ( ) { this . releaseCnt ++ , this . trigger ( "release" , this . eventInstanceGroupsById ) } , t . prototype . whenReleased = function ( ) { var t = this ; return this . releaseCnt ? o . default . resolve ( this . eventInstanceGroupsById ) : o . default . construct ( function ( e ) { t . one ( "release" , e ) } ) } , t . prototype . freeze = function ( ) { this . freezeDepth ++ || ( this . stuntedReleaseCnt = 0 ) } , t . prototype . thaw = function ( ) { -- this . freezeDepth || ! this . stuntedReleaseCnt || this . pendingCnt || this . release ( ) } , t } ( ) ; e . default = u , s . default . mixInto ( u ) } , function ( t , e , n ) { Object . defineProperty ( e , "__esModule" , { value : ! 0 } ) ; var i = n ( 3 ) , r = n ( 4 ) , o = n ( 7 ) , s = function ( ) { function t ( t , e ) { this . isFollowing = ! 1 , this . isHidden = ! 1 , this . isAnimating = ! 1 , this . options = e = e || { } , this . sourceEl = t , this . parentEl = e . parentEl ? i ( e . parentEl ) : t . parent ( ) } return t . prototype . start = function ( t ) { this . isFollowing || ( this . isFollowing = ! 0 , this . y0 = r . getEvY ( t ) , this . x0 = r . getEvX ( t ) , this . topDelta = 0 , this . leftDelta = 0 , this . isHidden || this . updatePosition ( ) , r . getEvIsTouch ( t ) ? this . listenTo ( i ( document ) , "touchmove" , this . handleMove ) : this . listenTo ( i ( document ) , "mousemove" , this . handleMove ) ) } , t . prototype . stop = function ( t , e ) { var n = this , r = this . options . revertDuration , o = function ( ) { n . isAnimating = ! 1 , n . removeElement ( ) , n . top0 = n . left0 = null , e && e ( ) } ; this . isFollowing && ! this . isAnimating && ( this . isFollowing = ! 1 , this . stopListeningTo ( i ( document ) ) , t && r && ! this . isHidden ? ( this . isAnimating = ! 0 , this . el . animate ( { top : this . top0 , left : this . left0 } , { duration : r , complete : o } ) ) : o ( ) ) } , t . prototype . getEl = function ( ) { var t = this . el ; return t || ( t = this . el = this . sourceEl . clone ( ) . addClass ( this . options . additionalClass || "" ) . css ( { position : "absolute" , visibility : "" , display : this . isHidden ? "none" : "" , margin : 0 , right : "auto" , bottom : "auto" , width : this . sourceEl . width ( ) , height : this . sourceEl . height ( ) , opacity : this . options . opacity || "" , zIndex : this . options . zIndex } ) , t . addClass ( "fc-unselectable" ) , t . appendTo ( this . parentEl ) ) , t } , t . prototype . removeElement = function ( ) { this . el && ( this . el . remove ( ) , this . el = null ) } , t . prototype . updatePosition = function ( ) { var t , e ; this . getEl ( ) , null == this . top0 && ( t = this . sourceEl . offset ( ) , e = this . el . offsetParent ( ) . offset ( ) , this . top0 = t . top - e . top , this . left0 = t . left - e . left ) , this . el . css ( { top : this . top0 + this . topDelta , left : this . left0 + this . leftDelta } ) } , t . prototype . handleMove = function ( t ) { this . topDelta = r . getEvY ( t ) - this . y0 , this . leftDelta = r . getEvX ( t ) - this . x0 , this . isHidden || this . updatePosition ( ) } , t . prototype . hide = function ( ) { this . isHidden || ( this . isHidden = ! 0 , this . el && this . el . hide ( ) ) } , t . prototype . show = function ( ) { this . isHidden && ( this . isHidden = ! 1 , this . updatePosition ( ) , this . getEl ( ) . show ( ) ) } , t } ( ) ; e . default = s , o . default . mixInto ( s ) } , function ( t , e , n ) { Object . defineProperty ( e , "__esModule" , { value : ! 0 } ) ; var i = n ( 2 ) , r = n ( 23 ) , o = n ( 15 ) , s = function ( t ) { function e ( e ) { var n = t . call ( this , e ) || this ; return n . dragListener = n . buildDragListener ( ) , n } return i . _ _extends ( e , t ) , e . prototype . end = function ( ) { this . dragListener . endInteraction ( ) } , e . prototype . bindToEl = function ( t ) { var e = this . component , n = this . dragListener ; e . bindDateHandlerToEl ( t , "mousedown" , function ( t ) { e . shouldIgnoreMouse ( ) || n . startInteraction ( t ) } ) , e . bindDateHandlerToEl ( t , "touchstart" , function ( t