Files
PyRIGS/RIGS/static/js/main.js
FreneticScribbler e6eed9f2f2 First pass at porting calendar from FC V3 to V5
Two major versions and all they did was rename a bunch of names...TWICE.
2020-10-19 00:13:06 +01:00

6 lines
27 KiB
JavaScript
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*!
FullCalendar v5.3.2
Docs & License: https://fullcalendar.io/
(c) 2020 Adam Shaw
*/
import"./main.css";import{createRef,getStickyHeaderDates,createElement,ViewRoot,SimpleScrollGrid,getStickyFooterScrollbar,DateComponent,renderScrollShim,createFormatter,setRef,buildNavLinkData,DayCellRoot,WeekNumberRoot,RenderHook,DayCellContent,Fragment,BaseComponent,buildSegTimeText,EventRoot,StandardEvent,sortEventSegs,addDays,intersectRanges,RefMap,isPropsEqual,getSegMeta,buildEventRangeKey,BgEvent,renderFill,PositionCache,mapHash,DelayedRunner,applyStyle,memoize,NowTimer,EventApi,Slicer,DayHeader,DaySeriesModel,DayTableModel,addWeeks,diffWeeks,DateProfileGenerator,identity,createPlugin}from"@fullcalendar/common";import{__extends,__assign,__spreadArrays}from"tslib";var TableView=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.headerElRef=createRef(),t}return __extends(t,e),t.prototype.renderSimpleLayout=function(e,t){var n=this.props,r=this.context,o=[],a=getStickyHeaderDates(r.options);return e&&o.push({type:"header",key:"header",isSticky:a,chunk:{elRef:this.headerElRef,tableClassName:"fc-col-header",rowContent:e}}),o.push({type:"body",key:"body",liquid:!0,chunk:{content:t}}),createElement(ViewRoot,{viewSpec:r.viewSpec},(function(e,t){return createElement("div",{ref:e,className:["fc-daygrid"].concat(t).join(" ")},createElement(SimpleScrollGrid,{liquid:!n.isHeightAuto&&!n.forPrint,cols:[],sections:o}))}))},t.prototype.renderHScrollLayout=function(e,t,n,r){var o=this.context.pluginHooks.scrollGridImpl;if(!o)throw new Error("No ScrollGrid implementation");var a=this.props,i=this.context,s=!a.forPrint&&getStickyHeaderDates(i.options),l=!a.forPrint&&getStickyFooterScrollbar(i.options),d=[];return e&&d.push({type:"header",key:"header",isSticky:s,chunks:[{key:"main",elRef:this.headerElRef,tableClassName:"fc-col-header",rowContent:e}]}),d.push({type:"body",key:"body",liquid:!0,chunks:[{key:"main",content:t}]}),l&&d.push({type:"footer",key:"footer",isSticky:!0,chunks:[{key:"main",content:renderScrollShim}]}),createElement(ViewRoot,{viewSpec:i.viewSpec},(function(e,t){return createElement("div",{ref:e,className:["fc-daygrid"].concat(t).join(" ")},createElement(o,{liquid:!a.isHeightAuto&&!a.forPrint,colGroups:[{cols:[{span:n,minWidth:r}]}],sections:d}))}))},t}(DateComponent);function splitSegsByRow(e,t){for(var n=[],r=0;r<t;r++)n[r]=[];for(var o=0,a=e;o<a.length;o++){var i=a[o];n[i.row].push(i)}return n}function splitSegsByFirstCol(e,t){for(var n=[],r=0;r<t;r++)n[r]=[];for(var o=0,a=e;o<a.length;o++){var i=a[o];n[i.firstCol].push(i)}return n}function splitInteractionByRow(e,t){var n=[];if(e){for(i=0;i<t;i++)n[i]={affectedInstances:e.affectedInstances,isEvent:e.isEvent,segs:[]};for(var r=0,o=e.segs;r<o.length;r++){var a=o[r];n[a.row].segs.push(a)}}else for(var i=0;i<t;i++)n[i]=null;return n}var DEFAULT_WEEK_NUM_FORMAT=createFormatter({week:"narrow"}),TableCell=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.handleRootEl=function(e){t.rootEl=e,setRef(t.props.elRef,e)},t.handleMoreLinkClick=function(e){var n=t.props;if(n.onMoreClick){var r=n.segsByEachCol,o=r.filter((function(e){return n.segIsHidden[e.eventRange.instance.instanceId]}));n.onMoreClick({date:n.date,allSegs:r,hiddenSegs:o,moreCnt:n.moreCnt,dayEl:t.rootEl,ev:e})}},t}return __extends(t,e),t.prototype.render=function(){var e=this,t=this.context,n=t.options,r=t.viewApi,o=this.props,a=o.date,i=o.dateProfile,s={num:o.moreCnt,text:o.buildMoreLinkText(o.moreCnt),view:r},l=n.navLinks?{"data-navlink":buildNavLinkData(a,"week"),tabIndex:0}:{};return createElement(DayCellRoot,{date:a,dateProfile:i,todayRange:o.todayRange,showDayNumber:o.showDayNumber,extraHookProps:o.extraHookProps,elRef:this.handleRootEl},(function(t,r,d,c){return createElement("td",__assign({ref:t,className:["fc-daygrid-day"].concat(r,o.extraClassNames||[]).join(" ")},d,o.extraDataAttrs),createElement("div",{className:"fc-daygrid-day-frame fc-scrollgrid-sync-inner",ref:o.innerElRef},o.showWeekNumber&&createElement(WeekNumberRoot,{date:a,defaultFormat:DEFAULT_WEEK_NUM_FORMAT},(function(e,t,n,r){return createElement("a",__assign({ref:e,className:["fc-daygrid-week-number"].concat(t).join(" ")},l),r)})),!c&&createElement(TableCellTop,{date:a,dateProfile:i,showDayNumber:o.showDayNumber,forceDayTop:o.forceDayTop,todayRange:o.todayRange,extraHookProps:o.extraHookProps}),createElement("div",{className:"fc-daygrid-day-events",ref:o.fgContentElRef,style:{paddingBottom:o.fgPaddingBottom}},o.fgContent,Boolean(o.moreCnt)&&createElement("div",{className:"fc-daygrid-day-bottom",style:{marginTop:o.moreMarginTop}},createElement(RenderHook,{hookProps:s,classNames:n.moreLinkClassNames,content:n.moreLinkContent,defaultContent:renderMoreLinkInner,didMount:n.moreLinkDidMount,willUnmount:n.moreLinkWillUnmount},(function(t,n,r,o){return createElement("a",{onClick:e.handleMoreLinkClick,ref:t,className:["fc-daygrid-more-link"].concat(n).join(" ")},o)})))),createElement("div",{className:"fc-daygrid-day-bg"},o.bgContent)))}))},t}(DateComponent);function renderTopInner(e){return e.dayNumberText}function renderMoreLinkInner(e){return e.text}var TableCellTop=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return __extends(t,e),t.prototype.render=function(){var e=this.props,t=this.context.options.navLinks?{"data-navlink":buildNavLinkData(e.date),tabIndex:0}:{};return createElement(DayCellContent,{date:e.date,dateProfile:e.dateProfile,todayRange:e.todayRange,showDayNumber:e.showDayNumber,extraHookProps:e.extraHookProps,defaultContent:renderTopInner},(function(n,r){return(r||e.forceDayTop)&&createElement("div",{className:"fc-daygrid-day-top",ref:n},createElement("a",__assign({className:"fc-daygrid-day-number"},t),r||createElement(Fragment,null," ")))}))},t}(BaseComponent),DEFAULT_TABLE_EVENT_TIME_FORMAT=createFormatter({hour:"numeric",minute:"2-digit",omitZeroMinute:!0,meridiem:"narrow"});function hasListItemDisplay(e){var t=e.eventRange.ui.display;return"list-item"===t||"auto"===t&&!e.eventRange.def.allDay&&e.firstCol===e.lastCol&&e.isStart&&e.isEnd}var TableListItemEvent=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return __extends(t,e),t.prototype.render=function(){var e=this.props,t=this.context,n=t.options.eventTimeFormat||DEFAULT_TABLE_EVENT_TIME_FORMAT,r=buildSegTimeText(e.seg,n,t,!0,e.defaultDisplayEventEnd);return createElement(EventRoot,{seg:e.seg,timeText:r,defaultContent:renderInnerContent,isDragging:e.isDragging,isResizing:!1,isDateSelecting:!1,isSelected:e.isSelected,isPast:e.isPast,isFuture:e.isFuture,isToday:e.isToday},(function(t,n,r,o){return createElement("a",__assign({className:["fc-daygrid-event","fc-daygrid-dot-event"].concat(n).join(" "),ref:t},getSegAnchorAttrs(e.seg)),o)}))},t}(BaseComponent);function renderInnerContent(e){return createElement(Fragment,null,createElement("div",{className:"fc-daygrid-event-dot",style:{borderColor:e.borderColor||e.backgroundColor}}),e.timeText&&createElement("div",{className:"fc-event-time"},e.timeText),createElement("div",{className:"fc-event-title"},e.event.title||createElement(Fragment,null," ")))}function getSegAnchorAttrs(e){var t=e.eventRange.def.url;return t?{href:t}:{}}var TableBlockEvent=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return __extends(t,e),t.prototype.render=function(){var e=this.props;return createElement(StandardEvent,__assign({},e,{extraClassNames:["fc-daygrid-event","fc-daygrid-block-event","fc-h-event"],defaultTimeFormat:DEFAULT_TABLE_EVENT_TIME_FORMAT,defaultDisplayEventEnd:e.defaultDisplayEventEnd,disableResizing:!e.seg.eventRange.def.allDay}))},t}(BaseComponent);function computeFgSegPlacement(e,t,n,r,o,a,i,s){for(var l=[],d=[],c={},u={},p={},f={},g={},h=0;h<i;h++)l.push([]),d.push(0);for(var m=0,v=t=sortEventSegs(t,s);m<v.length;m++){k(b=v[m],o[b.eventRange.instance.instanceId+":"+b.firstCol]||0)}!0===n||!0===r?limitByMaxHeight(d,c,l,a):"number"==typeof n?limitByMaxEvents(d,c,l,n):"number"==typeof r&&limitByMaxRows(d,c,l,r);for(var y=0;y<i;y++){for(var E=0,R=0,C=0,S=l[y];C<S.length;C++){var b,D=S[C];c[(b=D.seg).eventRange.instance.instanceId]||(u[b.eventRange.instance.instanceId]=D.top,b.firstCol===b.lastCol&&b.isStart&&b.isEnd?(p[b.eventRange.instance.instanceId]=D.top-E,R=0,E=D.bottom):R=D.bottom-E)}R&&(d[y]?f[y]=R:g[y]=R)}function k(e,t){if(!M(e,t,0))for(var n=e.firstCol;n<=e.lastCol;n++)for(var r=0,o=l[n];r<o.length;r++){if(M(e,t,o[r].bottom))return}}function M(e,t,n){if(function(e,t,n){for(var r=e.firstCol;r<=e.lastCol;r++)for(var o=0,a=l[r];o<a.length;o++){var i=a[o];if(n<i.bottom&&n+t>i.top)return!1}return!0}(e,t,n)){for(var r=e.firstCol;r<=e.lastCol;r++){for(var o=l[r],a=0;a<o.length&&n>=o[a].top;)a++;o.splice(a,0,{seg:e,top:n,bottom:n+t})}return!0}return!1}for(var w in o)o[w]||(c[w.split(":")[0]]=!0);return{segsByFirstCol:l.map(extractFirstColSegs),segsByEachCol:l.map((function(t,n){var r=extractAllColSegs(t);return r=resliceDaySegs(r,e[n].date,n)})),segIsHidden:c,segTops:u,segMarginTops:p,moreCnts:d,moreTops:f,paddingBottoms:g}}function extractFirstColSegs(e,t){for(var n=[],r=0,o=e;r<o.length;r++){var a=o[r];a.seg.firstCol===t&&n.push(a.seg)}return n}function extractAllColSegs(e){for(var t=[],n=0,r=e;n<r.length;n++){var o=r[n];t.push(o.seg)}return t}function limitByMaxHeight(e,t,n,r){limitEvents(e,t,n,!0,(function(e){return e.bottom<=r}))}function limitByMaxEvents(e,t,n,r){limitEvents(e,t,n,!1,(function(e,t){return t<r}))}function limitByMaxRows(e,t,n,r){limitEvents(e,t,n,!0,(function(e,t){return t<r}))}function limitEvents(e,t,n,r,o){for(var a=e.length,i={},s=[],l=0;l<a;l++)s.push([]);for(l=0;l<a;l++)for(var d=0,c=0,u=n[l];c<u.length;c++){var p=u[c];o(p,d)?f(p):g(p,d,r),p.top!==p.bottom&&d++}function f(e){var t=e.seg,n=t.eventRange.instance.instanceId;if(!i[n]){i[n]=!0;for(var r=t.firstCol;r<=t.lastCol;r++)s[r].push(e)}}function g(n,r,o){var a=n.seg,i=a.eventRange.instance.instanceId;if(!t[i]){t[i]=!0;for(var l=a.firstCol;l<=a.lastCol;l++){var d=++e[l];if(o&&1===d)for(var c=r-1;s[l].length>c;)g(s[l].pop(),s[l].length,!1)}}}}function resliceDaySegs(e,t,n){for(var r={start:t,end:addDays(t,1)},o=[],a=0,i=e;a<i.length;a++){var s=i[a],l=s.eventRange,d=l.range,c=intersectRanges(d,r);c&&o.push(__assign(__assign({},s),{firstCol:n,lastCol:n,eventRange:{def:l.def,ui:__assign(__assign({},l.ui),{durationEditable:!1}),instance:l.instance,range:c},isStart:s.isStart&&c.start.valueOf()===d.start.valueOf(),isEnd:s.isEnd&&c.end.valueOf()===d.end.valueOf()}))}return o}var TableRow=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.cellElRefs=new RefMap,t.frameElRefs=new RefMap,t.fgElRefs=new RefMap,t.segHarnessRefs=new RefMap,t.rootElRef=createRef(),t.state={framePositions:null,maxContentHeight:null,segHeights:{}},t}return __extends(t,e),t.prototype.render=function(){var e=this,t=this.props,n=this.state,r=this.context,o=t.cells.length,a=splitSegsByFirstCol(t.businessHourSegs,o),i=splitSegsByFirstCol(t.bgEventSegs,o),s=splitSegsByFirstCol(this.getHighlightSegs(),o),l=splitSegsByFirstCol(this.getMirrorSegs(),o),d=computeFgSegPlacement(t.cells,t.fgEventSegs,t.dayMaxEvents,t.dayMaxEventRows,n.segHeights,n.maxContentHeight,o,r.options.eventOrder),c=d.paddingBottoms,u=d.segsByFirstCol,p=d.segsByEachCol,f=d.segIsHidden,g=d.segTops,h=d.segMarginTops,m=d.moreCnts,v=d.moreTops,y=t.eventDrag&&t.eventDrag.affectedInstances||t.eventResize&&t.eventResize.affectedInstances||{};return createElement("tr",{ref:this.rootElRef},t.renderIntro&&t.renderIntro(),t.cells.map((function(n,r){var o=e.renderFgSegs(u[r],f,g,h,y,t.todayRange),d=e.renderFgSegs(l[r],{},g,{},{},t.todayRange,Boolean(t.eventDrag),Boolean(t.eventResize),!1);return createElement(TableCell,{key:n.key,elRef:e.cellElRefs.createRef(n.key),innerElRef:e.frameElRefs.createRef(n.key),dateProfile:t.dateProfile,date:n.date,showDayNumber:t.showDayNumbers,showWeekNumber:t.showWeekNumbers&&0===r,forceDayTop:t.showWeekNumbers,todayRange:t.todayRange,extraHookProps:n.extraHookProps,extraDataAttrs:n.extraDataAttrs,extraClassNames:n.extraClassNames,moreCnt:m[r],buildMoreLinkText:t.buildMoreLinkText,onMoreClick:t.onMoreClick,segIsHidden:f,moreMarginTop:v[r],segsByEachCol:p[r],fgPaddingBottom:c[r],fgContentElRef:e.fgElRefs.createRef(n.key),fgContent:createElement(Fragment,null,createElement(Fragment,null,o),createElement(Fragment,null,d)),bgContent:createElement(Fragment,null,e.renderFillSegs(s[r],"highlight"),e.renderFillSegs(a[r],"non-business"),e.renderFillSegs(i[r],"bg-event"))})})))},t.prototype.componentDidMount=function(){this.updateSizing(!0)},t.prototype.componentDidUpdate=function(e,t){var n=this.props;this.updateSizing(!isPropsEqual(e,n))},t.prototype.getHighlightSegs=function(){var e=this.props;return e.eventDrag&&e.eventDrag.segs.length?e.eventDrag.segs:e.eventResize&&e.eventResize.segs.length?e.eventResize.segs:e.dateSelectionSegs},t.prototype.getMirrorSegs=function(){var e=this.props;return e.eventResize&&e.eventResize.segs.length?e.eventResize.segs:[]},t.prototype.renderFgSegs=function(e,t,n,r,o,a,i,s,l){var d=this.context,c=this.props.eventSelection,u=this.state.framePositions,p=1===this.props.cells.length,f=[];if(u)for(var g=0,h=e;g<h.length;g++){var m=h[g],v=m.eventRange.instance.instanceId,y=i||s||l,E=o[v],R=t[v]||E,C=t[v]||y||m.firstCol!==m.lastCol||!m.isStart||!m.isEnd,S=void 0,b=void 0,D=void 0,k=void 0;C?(b=n[v],d.isRtl?(k=0,D=u.lefts[m.lastCol]-u.lefts[m.firstCol]):(D=0,k=u.rights[m.firstCol]-u.rights[m.lastCol])):S=r[v],f.push(createElement("div",{className:"fc-daygrid-event-harness"+(C?" fc-daygrid-event-harness-abs":""),key:v,ref:y?null:this.segHarnessRefs.createRef(v+":"+m.firstCol),style:{visibility:R?"hidden":"",marginTop:S||"",top:b||"",left:D||"",right:k||""}},hasListItemDisplay(m)?createElement(TableListItemEvent,__assign({seg:m,isDragging:i,isSelected:v===c,defaultDisplayEventEnd:p},getSegMeta(m,a))):createElement(TableBlockEvent,__assign({seg:m,isDragging:i,isResizing:s,isDateSelecting:l,isSelected:v===c,defaultDisplayEventEnd:p},getSegMeta(m,a)))))}return f},t.prototype.renderFillSegs=function(e,t){var n=this.context.isRtl,r=this.props.todayRange,o=this.state.framePositions,a=[];if(o)for(var i=0,s=e;i<s.length;i++){var l=s[i],d=n?{right:0,left:o.lefts[l.lastCol]-o.lefts[l.firstCol]}:{left:0,right:o.rights[l.firstCol]-o.rights[l.lastCol]};a.push(createElement("div",{key:buildEventRangeKey(l.eventRange),className:"fc-daygrid-bg-harness",style:d},"bg-event"===t?createElement(BgEvent,__assign({seg:l},getSegMeta(l,r))):renderFill(t)))}return createElement.apply(void 0,__spreadArrays([Fragment,{}],a))},t.prototype.updateSizing=function(e){var t=this.props,n=this.frameElRefs;if(null!==t.clientWidth){if(e){var r=t.cells.map((function(e){return n.currentMap[e.key]}));if(r.length){var o=this.rootElRef.current;this.setState({framePositions:new PositionCache(o,r,!0,!1)})}}var a=!0===t.dayMaxEvents||!0===t.dayMaxEventRows;this.setState({segHeights:this.computeSegHeights(),maxContentHeight:a?this.computeMaxContentHeight():null})}},t.prototype.computeSegHeights=function(){return mapHash(this.segHarnessRefs.currentMap,(function(e){return e.getBoundingClientRect().height}))},t.prototype.computeMaxContentHeight=function(){var e=this.props.cells[0].key,t=this.cellElRefs.currentMap[e],n=this.fgElRefs.currentMap[e];return t.getBoundingClientRect().bottom-n.getBoundingClientRect().top},t.prototype.getCellEls=function(){var e=this.cellElRefs.currentMap;return this.props.cells.map((function(t){return e[t.key]}))},t}(DateComponent);TableRow.addStateEquality({segHeights:isPropsEqual});var PADDING_FROM_VIEWPORT=10,SCROLL_DEBOUNCE=10,Popover=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.repositioner=new DelayedRunner(t.updateSize.bind(t)),t.handleRootEl=function(e){t.rootEl=e,t.props.elRef&&setRef(t.props.elRef,e)},t.handleDocumentMousedown=function(e){var n=t.props.onClose;n&&!t.rootEl.contains(e.target)&&n()},t.handleDocumentScroll=function(){t.repositioner.request(SCROLL_DEBOUNCE)},t.handleCloseClick=function(){var e=t.props.onClose;e&&e()},t}return __extends(t,e),t.prototype.render=function(){var e=this.context.theme,t=this.props,n=["fc-popover",e.getClass("popover")].concat(t.extraClassNames||[]);return createElement("div",__assign({className:n.join(" ")},t.extraAttrs,{ref:this.handleRootEl}),createElement("div",{className:"fc-popover-header "+e.getClass("popoverHeader")},createElement("span",{className:"fc-popover-title"},t.title),createElement("span",{className:"fc-popover-close "+e.getIconClass("close"),onClick:this.handleCloseClick})),createElement("div",{className:"fc-popover-body "+e.getClass("popoverContent")},t.children))},t.prototype.componentDidMount=function(){document.addEventListener("mousedown",this.handleDocumentMousedown),document.addEventListener("scroll",this.handleDocumentScroll),this.updateSize()},t.prototype.componentWillUnmount=function(){document.removeEventListener("mousedown",this.handleDocumentMousedown),document.removeEventListener("scroll",this.handleDocumentScroll)},t.prototype.updateSize=function(){var e=this.props,t=e.alignmentEl,n=e.topAlignmentEl,r=this.rootEl;if(r){var o,a=r.getBoundingClientRect(),i=t.getBoundingClientRect(),s=n?n.getBoundingClientRect().top:i.top;s=Math.min(s,window.innerHeight-a.height-PADDING_FROM_VIEWPORT),s=Math.max(s,PADDING_FROM_VIEWPORT),o=this.context.isRtl?i.right-a.width:i.left,o=Math.min(o,window.innerWidth-a.width-PADDING_FROM_VIEWPORT),o=Math.max(o,PADDING_FROM_VIEWPORT),applyStyle(r,{top:s,left:o})}},t}(BaseComponent),MorePopover=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.handlePopoverEl=function(e){t.popoverEl=e,e?t.context.registerInteractiveComponent(t,{el:e,useEventCenter:!1}):t.context.unregisterInteractiveComponent(t)},t}return __extends(t,e),t.prototype.render=function(){var e=this.context,t=e.options,n=e.dateEnv,r=this.props,o=r.date,a=r.hiddenInstances,i=r.todayRange,s=r.dateProfile,l=r.selectedInstanceId,d=n.format(o,t.dayPopoverFormat);return createElement(DayCellRoot,{date:o,dateProfile:s,todayRange:i,elRef:this.handlePopoverEl},(function(e,t,n){return createElement(Popover,{elRef:e,title:d,extraClassNames:["fc-more-popover"].concat(t),extraAttrs:n,onClose:r.onCloseClick,alignmentEl:r.alignmentEl,topAlignmentEl:r.topAlignmentEl},createElement(DayCellContent,{date:o,dateProfile:s,todayRange:i},(function(e,t){return t&&createElement("div",{className:"fc-more-popover-misc",ref:e},t)})),r.segs.map((function(e){var t=e.eventRange.instance.instanceId;return createElement("div",{className:"fc-daygrid-event-harness",key:t,style:{visibility:a[t]?"hidden":""}},hasListItemDisplay(e)?createElement(TableListItemEvent,__assign({seg:e,isDragging:!1,isSelected:t===l,defaultDisplayEventEnd:!1},getSegMeta(e,i))):createElement(TableBlockEvent,__assign({seg:e,isDragging:!1,isResizing:!1,isDateSelecting:!1,isSelected:t===l,defaultDisplayEventEnd:!1},getSegMeta(e,i))))})))}))},t.prototype.queryHit=function(e,t,n,r){var o=this.props.date;if(e<n&&t<r)return{component:this,dateSpan:{allDay:!0,range:{start:o,end:addDays(o,1)}},dayEl:this.popoverEl,rect:{left:0,top:0,right:n,bottom:r},layer:1}},t.prototype.isPopover=function(){return!0},t}(DateComponent),Table=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.splitBusinessHourSegs=memoize(splitSegsByRow),t.splitBgEventSegs=memoize(splitSegsByRow),t.splitFgEventSegs=memoize(splitSegsByRow),t.splitDateSelectionSegs=memoize(splitSegsByRow),t.splitEventDrag=memoize(splitInteractionByRow),t.splitEventResize=memoize(splitInteractionByRow),t.buildBuildMoreLinkText=memoize(buildBuildMoreLinkText),t.rowRefs=new RefMap,t.state={morePopoverState:null},t.handleRootEl=function(e){t.rootEl=e,setRef(t.props.elRef,e)},t.handleMoreLinkClick=function(e){var n=t.context,r=n.dateEnv,o=n.options.moreLinkClick;function a(e){var t=e.eventRange,o=t.def,a=t.instance,i=t.range;return{event:new EventApi(n,o,a),start:r.toDate(i.start),end:r.toDate(i.end),isStart:e.isStart,isEnd:e.isEnd}}"function"==typeof o&&(o=o({date:r.toDate(e.date),allDay:!0,allSegs:e.allSegs.map(a),hiddenSegs:e.hiddenSegs.map(a),jsEvent:e.ev,view:n.viewApi})),o&&"popover"!==o?"string"==typeof o&&n.calendarApi.zoomTo(e.date,o):t.setState({morePopoverState:__assign(__assign({},e),{currentFgEventSegs:t.props.fgEventSegs})})},t.handleMorePopoverClose=function(){t.setState({morePopoverState:null})},t}return __extends(t,e),t.prototype.render=function(){var e=this,t=this.props,n=t.dateProfile,r=t.dayMaxEventRows,o=t.dayMaxEvents,a=t.expandRows,i=this.state.morePopoverState,s=t.cells.length,l=this.splitBusinessHourSegs(t.businessHourSegs,s),d=this.splitBgEventSegs(t.bgEventSegs,s),c=this.splitFgEventSegs(t.fgEventSegs,s),u=this.splitDateSelectionSegs(t.dateSelectionSegs,s),p=this.splitEventDrag(t.eventDrag,s),f=this.splitEventResize(t.eventResize,s),g=this.buildBuildMoreLinkText(this.context.options.moreLinkText),h=!0===o||!0===r;return h&&!a&&(h=!1,r=null,o=null),createElement("div",{className:["fc-daygrid-body",h?"fc-daygrid-body-balanced":"fc-daygrid-body-unbalanced",a?"":"fc-daygrid-body-natural"].join(" "),ref:this.handleRootEl,style:{width:t.clientWidth,minWidth:t.tableMinWidth}},createElement(NowTimer,{unit:"day"},(function(h,m){return createElement(Fragment,null,createElement("table",{className:"fc-scrollgrid-sync-table",style:{width:t.clientWidth,minWidth:t.tableMinWidth,height:a?t.clientHeight:""}},t.colGroupNode,createElement("tbody",null,t.cells.map((function(a,i){return createElement(TableRow,{ref:e.rowRefs.createRef(i),key:a.length?a[0].date.toISOString():i,showDayNumbers:s>1,showWeekNumbers:t.showWeekNumbers,todayRange:m,dateProfile:n,cells:a,renderIntro:t.renderRowIntro,businessHourSegs:l[i],eventSelection:t.eventSelection,bgEventSegs:d[i].filter(isSegAllDay),fgEventSegs:c[i],dateSelectionSegs:u[i],eventDrag:p[i],eventResize:f[i],dayMaxEvents:o,dayMaxEventRows:r,clientWidth:t.clientWidth,clientHeight:t.clientHeight,buildMoreLinkText:g,onMoreClick:e.handleMoreLinkClick})})))),!t.forPrint&&i&&i.currentFgEventSegs===t.fgEventSegs&&createElement(MorePopover,{date:i.date,dateProfile:n,segs:i.allSegs,alignmentEl:i.dayEl,topAlignmentEl:1===s?t.headerAlignElRef.current:null,onCloseClick:e.handleMorePopoverClose,selectedInstanceId:t.eventSelection,hiddenInstances:(t.eventDrag?t.eventDrag.affectedInstances:null)||(t.eventResize?t.eventResize.affectedInstances:null)||{},todayRange:m}))})))},t.prototype.prepareHits=function(){this.rowPositions=new PositionCache(this.rootEl,this.rowRefs.collect().map((function(e){return e.getCellEls()[0]})),!1,!0),this.colPositions=new PositionCache(this.rootEl,this.rowRefs.currentMap[0].getCellEls(),!0,!1)},t.prototype.positionToHit=function(e,t){var n=this.colPositions,r=this.rowPositions,o=n.leftToIndex(e),a=r.topToIndex(t);if(null!=a&&null!=o)return{row:a,col:o,dateSpan:{range:this.getCellRange(a,o),allDay:!0},dayEl:this.getCellEl(a,o),relativeRect:{left:n.lefts[o],right:n.rights[o],top:r.tops[a],bottom:r.bottoms[a]}}},t.prototype.getCellEl=function(e,t){return this.rowRefs.currentMap[e].getCellEls()[t]},t.prototype.getCellRange=function(e,t){var n=this.props.cells[e][t].date;return{start:n,end:addDays(n,1)}},t}(DateComponent);function buildBuildMoreLinkText(e){return"function"==typeof e?e:function(t){return"+"+t+" "+e}}function isSegAllDay(e){return e.eventRange.def.allDay}var DayTable=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.slicer=new DayTableSlicer,t.tableRef=createRef(),t.handleRootEl=function(e){e?t.context.registerInteractiveComponent(t,{el:e}):t.context.unregisterInteractiveComponent(t)},t}return __extends(t,e),t.prototype.render=function(){var e=this.props,t=this.context;return createElement(Table,__assign({ref:this.tableRef,elRef:this.handleRootEl},this.slicer.sliceProps(e,e.dateProfile,e.nextDayThreshold,t,e.dayTableModel),{dateProfile:e.dateProfile,cells:e.dayTableModel.cells,colGroupNode:e.colGroupNode,tableMinWidth:e.tableMinWidth,renderRowIntro:e.renderRowIntro,dayMaxEvents:e.dayMaxEvents,dayMaxEventRows:e.dayMaxEventRows,showWeekNumbers:e.showWeekNumbers,expandRows:e.expandRows,headerAlignElRef:e.headerAlignElRef,clientWidth:e.clientWidth,clientHeight:e.clientHeight,forPrint:e.forPrint}))},t.prototype.prepareHits=function(){this.tableRef.current.prepareHits()},t.prototype.queryHit=function(e,t){var n=this.tableRef.current.positionToHit(e,t);if(n)return{component:this,dateSpan:n.dateSpan,dayEl:n.dayEl,rect:{left:n.relativeRect.left,right:n.relativeRect.right,top:n.relativeRect.top,bottom:n.relativeRect.bottom},layer:0}},t}(DateComponent),DayTableSlicer=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.forceDayIfListItem=!0,t}return __extends(t,e),t.prototype.sliceRange=function(e,t){return t.sliceRange(e)},t}(Slicer),DayTableView=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.buildDayTableModel=memoize(buildDayTableModel),t.headerRef=createRef(),t.tableRef=createRef(),t}return __extends(t,e),t.prototype.render=function(){var e=this,t=this.context,n=t.options,r=t.dateProfileGenerator,o=this.props,a=this.buildDayTableModel(o.dateProfile,r),i=n.dayHeaders&&createElement(DayHeader,{ref:this.headerRef,dateProfile:o.dateProfile,dates:a.headerDates,datesRepDistinctDays:1===a.rowCnt}),s=function(t){return createElement(DayTable,{ref:e.tableRef,dateProfile:o.dateProfile,dayTableModel:a,businessHours:o.businessHours,dateSelection:o.dateSelection,eventStore:o.eventStore,eventUiBases:o.eventUiBases,eventSelection:o.eventSelection,eventDrag:o.eventDrag,eventResize:o.eventResize,nextDayThreshold:n.nextDayThreshold,colGroupNode:t.tableColGroupNode,tableMinWidth:t.tableMinWidth,dayMaxEvents:n.dayMaxEvents,dayMaxEventRows:n.dayMaxEventRows,showWeekNumbers:n.weekNumbers,expandRows:!o.isHeightAuto,headerAlignElRef:e.headerElRef,clientWidth:t.clientWidth,clientHeight:t.clientHeight,forPrint:o.forPrint})};return n.dayMinWidth?this.renderHScrollLayout(i,s,a.colCnt,n.dayMinWidth):this.renderSimpleLayout(i,s)},t}(TableView);function buildDayTableModel(e,t){var n=new DaySeriesModel(e.renderRange,t);return new DayTableModel(n,/year|month|week/.test(e.currentRangeUnit))}var TableDateProfileGenerator=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return __extends(t,e),t.prototype.buildRenderRange=function(t,n,r){var o,a=this.props.dateEnv,i=e.prototype.buildRenderRange.call(this,t,n,r),s=i.start,l=i.end;if(/^(year|month)$/.test(n)&&(s=a.startOfWeek(s),(o=a.startOfWeek(l)).valueOf()!==l.valueOf()&&(l=addWeeks(o,1))),this.props.monthMode&&this.props.fixedWeekCount){var d=Math.ceil(diffWeeks(s,l));l=addWeeks(l,6-d)}return{start:s,end:l}},t}(DateProfileGenerator),OPTION_REFINERS={moreLinkClick:identity,moreLinkClassNames:identity,moreLinkContent:identity,moreLinkDidMount:identity,moreLinkWillUnmount:identity},main=createPlugin({initialView:"dayGridMonth",optionRefiners:OPTION_REFINERS,views:{dayGrid:{component:DayTableView,dateProfileGeneratorClass:TableDateProfileGenerator},dayGridDay:{type:"dayGrid",duration:{days:1}},dayGridWeek:{type:"dayGrid",duration:{weeks:1}},dayGridMonth:{type:"dayGrid",duration:{months:1},monthMode:!0,fixedWeekCount:!0}}});export default main;export{DayTableView as DayGridView,DayTable,DayTableSlicer,Table,TableView,buildDayTableModel};