surrounding the more link\n component.isValidSegDownEl(ev.target)) {\n // our way to simulate a link click for elements that can't be
tags\n // grab before trigger fired in case trigger trashes DOM thru rerendering\n let hasUrlContainer = elementClosest(ev.target, '.fc-event-forced-url');\n let url = hasUrlContainer ? hasUrlContainer.querySelector('a[href]').href : '';\n context.emitter.trigger('eventClick', {\n el: segEl,\n event: new EventImpl(component.context, seg.eventRange.def, seg.eventRange.instance),\n jsEvent: ev,\n view: context.viewApi,\n });\n if (url && !ev.defaultPrevented) {\n window.location.href = url;\n }\n }\n };\n this.destroy = listenBySelector(settings.el, 'click', '.fc-event', // on both fg and bg events\n this.handleSegClick);\n }\n}\n\n/*\nTriggers events and adds/removes core classNames when the user's pointer\nenters/leaves event-elements of a component.\n*/\nclass EventHovering extends Interaction {\n constructor(settings) {\n super(settings);\n // for simulating an eventMouseLeave when the event el is destroyed while mouse is over it\n this.handleEventElRemove = (el) => {\n if (el === this.currentSegEl) {\n this.handleSegLeave(null, this.currentSegEl);\n }\n };\n this.handleSegEnter = (ev, segEl) => {\n if (getElSeg(segEl)) { // TODO: better way to make sure not hovering over more+ link or its wrapper\n this.currentSegEl = segEl;\n this.triggerEvent('eventMouseEnter', ev, segEl);\n }\n };\n this.handleSegLeave = (ev, segEl) => {\n if (this.currentSegEl) {\n this.currentSegEl = null;\n this.triggerEvent('eventMouseLeave', ev, segEl);\n }\n };\n this.removeHoverListeners = listenToHoverBySelector(settings.el, '.fc-event', // on both fg and bg events\n this.handleSegEnter, this.handleSegLeave);\n }\n destroy() {\n this.removeHoverListeners();\n }\n triggerEvent(publicEvName, ev, segEl) {\n let { component } = this;\n let { context } = component;\n let seg = getElSeg(segEl);\n if (!ev || component.isValidSegDownEl(ev.target)) {\n context.emitter.trigger(publicEvName, {\n el: segEl,\n event: new EventImpl(context, seg.eventRange.def, seg.eventRange.instance),\n jsEvent: ev,\n view: context.viewApi,\n });\n }\n }\n}\n\nclass CalendarContent extends PureComponent {\n constructor() {\n super(...arguments);\n this.buildViewContext = memoize(buildViewContext);\n this.buildViewPropTransformers = memoize(buildViewPropTransformers);\n this.buildToolbarProps = memoize(buildToolbarProps);\n this.headerRef = createRef();\n this.footerRef = createRef();\n this.interactionsStore = {};\n // eslint-disable-next-line\n this.state = {\n viewLabelId: getUniqueDomId(),\n };\n // Component Registration\n // -----------------------------------------------------------------------------------------------------------------\n this.registerInteractiveComponent = (component, settingsInput) => {\n let settings = parseInteractionSettings(component, settingsInput);\n let DEFAULT_INTERACTIONS = [\n EventClicking,\n EventHovering,\n ];\n let interactionClasses = DEFAULT_INTERACTIONS.concat(this.props.pluginHooks.componentInteractions);\n let interactions = interactionClasses.map((TheInteractionClass) => new TheInteractionClass(settings));\n this.interactionsStore[component.uid] = interactions;\n interactionSettingsStore[component.uid] = settings;\n };\n this.unregisterInteractiveComponent = (component) => {\n let listeners = this.interactionsStore[component.uid];\n if (listeners) {\n for (let listener of listeners) {\n listener.destroy();\n }\n delete this.interactionsStore[component.uid];\n }\n delete interactionSettingsStore[component.uid];\n };\n // Resizing\n // -----------------------------------------------------------------------------------------------------------------\n this.resizeRunner = new DelayedRunner(() => {\n this.props.emitter.trigger('_resize', true); // should window resizes be considered \"forced\" ?\n this.props.emitter.trigger('windowResize', { view: this.props.viewApi });\n });\n this.handleWindowResize = (ev) => {\n let { options } = this.props;\n if (options.handleWindowResize &&\n ev.target === window // avoid jqui events\n ) {\n this.resizeRunner.request(options.windowResizeDelay);\n }\n };\n }\n /*\n renders INSIDE of an outer div\n */\n render() {\n let { props } = this;\n let { toolbarConfig, options } = props;\n let toolbarProps = this.buildToolbarProps(props.viewSpec, props.dateProfile, props.dateProfileGenerator, props.currentDate, getNow(props.options.now, props.dateEnv), // TODO: use NowTimer????\n props.viewTitle);\n let viewVGrow = false;\n let viewHeight = '';\n let viewAspectRatio;\n if (props.isHeightAuto || props.forPrint) {\n viewHeight = '';\n }\n else if (options.height != null) {\n viewVGrow = true;\n }\n else if (options.contentHeight != null) {\n viewHeight = options.contentHeight;\n }\n else {\n viewAspectRatio = Math.max(options.aspectRatio, 0.5); // prevent from getting too tall\n }\n let viewContext = this.buildViewContext(props.viewSpec, props.viewApi, props.options, props.dateProfileGenerator, props.dateEnv, props.theme, props.pluginHooks, props.dispatch, props.getCurrentData, props.emitter, props.calendarApi, this.registerInteractiveComponent, this.unregisterInteractiveComponent);\n let viewLabelId = (toolbarConfig.header && toolbarConfig.header.hasTitle)\n ? this.state.viewLabelId\n : '';\n return (createElement(ViewContextType.Provider, { value: viewContext },\n toolbarConfig.header && (createElement(Toolbar, Object.assign({ ref: this.headerRef, extraClassName: \"fc-header-toolbar\", model: toolbarConfig.header, titleId: viewLabelId }, toolbarProps))),\n createElement(ViewContainer, { liquid: viewVGrow, height: viewHeight, aspectRatio: viewAspectRatio, labeledById: viewLabelId },\n this.renderView(props),\n this.buildAppendContent()),\n toolbarConfig.footer && (createElement(Toolbar, Object.assign({ ref: this.footerRef, extraClassName: \"fc-footer-toolbar\", model: toolbarConfig.footer, titleId: \"\" }, toolbarProps)))));\n }\n componentDidMount() {\n let { props } = this;\n this.calendarInteractions = props.pluginHooks.calendarInteractions\n .map((CalendarInteractionClass) => new CalendarInteractionClass(props));\n window.addEventListener('resize', this.handleWindowResize);\n let { propSetHandlers } = props.pluginHooks;\n for (let propName in propSetHandlers) {\n propSetHandlers[propName](props[propName], props);\n }\n }\n componentDidUpdate(prevProps) {\n let { props } = this;\n let { propSetHandlers } = props.pluginHooks;\n for (let propName in propSetHandlers) {\n if (props[propName] !== prevProps[propName]) {\n propSetHandlers[propName](props[propName], props);\n }\n }\n }\n componentWillUnmount() {\n window.removeEventListener('resize', this.handleWindowResize);\n this.resizeRunner.clear();\n for (let interaction of this.calendarInteractions) {\n interaction.destroy();\n }\n this.props.emitter.trigger('_unmount');\n }\n buildAppendContent() {\n let { props } = this;\n let children = props.pluginHooks.viewContainerAppends.map((buildAppendContent) => buildAppendContent(props));\n return createElement(Fragment, {}, ...children);\n }\n renderView(props) {\n let { pluginHooks } = props;\n let { viewSpec } = props;\n let viewProps = {\n dateProfile: props.dateProfile,\n businessHours: props.businessHours,\n eventStore: props.renderableEventStore,\n eventUiBases: props.eventUiBases,\n dateSelection: props.dateSelection,\n eventSelection: props.eventSelection,\n eventDrag: props.eventDrag,\n eventResize: props.eventResize,\n isHeightAuto: props.isHeightAuto,\n forPrint: props.forPrint,\n };\n let transformers = this.buildViewPropTransformers(pluginHooks.viewPropsTransformers);\n for (let transformer of transformers) {\n Object.assign(viewProps, transformer.transform(viewProps, props));\n }\n let ViewComponent = viewSpec.component;\n return (createElement(ViewComponent, Object.assign({}, viewProps)));\n }\n}\nfunction buildToolbarProps(viewSpec, dateProfile, dateProfileGenerator, currentDate, now, title) {\n // don't force any date-profiles to valid date profiles (the `false`) so that we can tell if it's invalid\n let todayInfo = dateProfileGenerator.build(now, undefined, false); // TODO: need `undefined` or else INFINITE LOOP for some reason\n let prevInfo = dateProfileGenerator.buildPrev(dateProfile, currentDate, false);\n let nextInfo = dateProfileGenerator.buildNext(dateProfile, currentDate, false);\n return {\n title,\n activeButton: viewSpec.type,\n navUnit: viewSpec.singleUnit,\n isTodayEnabled: todayInfo.isValid && !rangeContainsMarker(dateProfile.currentRange, now),\n isPrevEnabled: prevInfo.isValid,\n isNextEnabled: nextInfo.isValid,\n };\n}\n// Plugin\n// -----------------------------------------------------------------------------------------------------------------\nfunction buildViewPropTransformers(theClasses) {\n return theClasses.map((TheClass) => new TheClass());\n}\n\nclass Calendar extends CalendarImpl {\n constructor(el, optionOverrides = {}) {\n super();\n this.isRendering = false;\n this.isRendered = false;\n this.currentClassNames = [];\n this.customContentRenderId = 0;\n this.handleAction = (action) => {\n // actions we know we want to render immediately\n switch (action.type) {\n case 'SET_EVENT_DRAG':\n case 'SET_EVENT_RESIZE':\n this.renderRunner.tryDrain();\n }\n };\n this.handleData = (data) => {\n this.currentData = data;\n this.renderRunner.request(data.calendarOptions.rerenderDelay);\n };\n this.handleRenderRequest = () => {\n if (this.isRendering) {\n this.isRendered = true;\n let { currentData } = this;\n flushSync(() => {\n render(createElement(CalendarRoot, { options: currentData.calendarOptions, theme: currentData.theme, emitter: currentData.emitter }, (classNames, height, isHeightAuto, forPrint) => {\n this.setClassNames(classNames);\n this.setHeight(height);\n return (createElement(RenderId.Provider, { value: this.customContentRenderId },\n createElement(CalendarContent, Object.assign({ isHeightAuto: isHeightAuto, forPrint: forPrint }, currentData))));\n }), this.el);\n });\n }\n else if (this.isRendered) {\n this.isRendered = false;\n render(null, this.el);\n this.setClassNames([]);\n this.setHeight('');\n }\n };\n this.el = el;\n this.renderRunner = new DelayedRunner(this.handleRenderRequest);\n new CalendarDataManager({\n optionOverrides,\n calendarApi: this,\n onAction: this.handleAction,\n onData: this.handleData,\n });\n }\n render() {\n let wasRendering = this.isRendering;\n if (!wasRendering) {\n this.isRendering = true;\n }\n else {\n this.customContentRenderId += 1;\n }\n this.renderRunner.request();\n if (wasRendering) {\n this.updateSize();\n }\n }\n destroy() {\n if (this.isRendering) {\n this.isRendering = false;\n this.renderRunner.request();\n }\n }\n updateSize() {\n flushSync(() => {\n super.updateSize();\n });\n }\n batchRendering(func) {\n this.renderRunner.pause('batchRendering');\n func();\n this.renderRunner.resume('batchRendering');\n }\n pauseRendering() {\n this.renderRunner.pause('pauseRendering');\n }\n resumeRendering() {\n this.renderRunner.resume('pauseRendering', true);\n }\n resetOptions(optionOverrides, append) {\n this.currentDataManager.resetOptions(optionOverrides, append);\n }\n setClassNames(classNames) {\n if (!isArraysEqual(classNames, this.currentClassNames)) {\n let { classList } = this.el;\n for (let className of this.currentClassNames) {\n classList.remove(className);\n }\n for (let className of classNames) {\n classList.add(className);\n }\n this.currentClassNames = classNames;\n }\n }\n setHeight(height) {\n applyStyleProp(this.el, 'height', height);\n }\n}\n\nfunction formatDate(dateInput, options = {}) {\n let dateEnv = buildDateEnv(options);\n let formatter = createFormatter(options);\n let dateMeta = dateEnv.createMarkerMeta(dateInput);\n if (!dateMeta) { // TODO: warning?\n return '';\n }\n return dateEnv.format(dateMeta.marker, formatter, {\n forcedTzo: dateMeta.forcedTzo,\n });\n}\nfunction formatRange(startInput, endInput, options) {\n let dateEnv = buildDateEnv(typeof options === 'object' && options ? options : {}); // pass in if non-null object\n let formatter = createFormatter(options);\n let startMeta = dateEnv.createMarkerMeta(startInput);\n let endMeta = dateEnv.createMarkerMeta(endInput);\n if (!startMeta || !endMeta) { // TODO: warning?\n return '';\n }\n return dateEnv.formatRange(startMeta.marker, endMeta.marker, formatter, {\n forcedStartTzo: startMeta.forcedTzo,\n forcedEndTzo: endMeta.forcedTzo,\n isEndExclusive: options.isEndExclusive,\n defaultSeparator: BASE_OPTION_DEFAULTS.defaultRangeSeparator,\n });\n}\n// TODO: more DRY and optimized\nfunction buildDateEnv(settings) {\n let locale = buildLocale(settings.locale || 'en', organizeRawLocales([]).map); // TODO: don't hardcode 'en' everywhere\n return new DateEnv(Object.assign(Object.assign({ timeZone: BASE_OPTION_DEFAULTS.timeZone, calendarSystem: 'gregory' }, settings), { locale }));\n}\n\n// HELPERS\n/*\nif nextDayThreshold is specified, slicing is done in an all-day fashion.\nyou can get nextDayThreshold from context.nextDayThreshold\n*/\nfunction sliceEvents(props, allDay) {\n return sliceEventStore(props.eventStore, props.eventUiBases, props.dateProfile.activeRange, allDay ? props.nextDayThreshold : null).fg;\n}\n\nconst version = '6.0.2';\n\nexport { Calendar, createPlugin, formatDate, formatRange, globalLocales, globalPlugins, sliceEvents, version };\n",null,null,null,null,"import { DateComponent, getStickyHeaderDates, ViewContainer, SimpleScrollGrid, getStickyFooterScrollbar, renderScrollShim, createFormatter, BaseComponent, StandardEvent, buildSegTimeText, EventContainer, getSegAnchorAttrs, memoize, MoreLinkContainer, getSegMeta, getUniqueDomId, setRef, DayCellContainer, WeekNumberContainer, buildNavLinkAttrs, hasCustomDayCellContent, intersectRanges, addDays, SegHierarchy, buildEntryKey, intersectSpans, RefMap, sortEventSegs, isPropsEqual, buildEventRangeKey, BgEvent, renderFill, PositionCache, NowTimer, Slicer, DayHeader, DaySeriesModel, DayTableModel } from '@fullcalendar/core/internal.js';\nimport { createRef, createElement, Fragment } from '@fullcalendar/core/preact.js';\n\n/* An abstract class for the daygrid views, as well as month view. Renders one or more rows of day cells.\n----------------------------------------------------------------------------------------------------------------------*/\n// It is a manager for a Table subcomponent, which does most of the heavy lifting.\n// It is responsible for managing width/height.\nclass TableView extends DateComponent {\n constructor() {\n super(...arguments);\n this.headerElRef = createRef();\n }\n renderSimpleLayout(headerRowContent, bodyContent) {\n let { props, context } = this;\n let sections = [];\n let stickyHeaderDates = getStickyHeaderDates(context.options);\n if (headerRowContent) {\n sections.push({\n type: 'header',\n key: 'header',\n isSticky: stickyHeaderDates,\n chunk: {\n elRef: this.headerElRef,\n tableClassName: 'fc-col-header',\n rowContent: headerRowContent,\n },\n });\n }\n sections.push({\n type: 'body',\n key: 'body',\n liquid: true,\n chunk: { content: bodyContent },\n });\n return (createElement(ViewContainer, { elClasses: ['fc-daygrid'], viewSpec: context.viewSpec },\n createElement(SimpleScrollGrid, { liquid: !props.isHeightAuto && !props.forPrint, collapsibleWidth: props.forPrint, cols: [] /* TODO: make optional? */, sections: sections })));\n }\n renderHScrollLayout(headerRowContent, bodyContent, colCnt, dayMinWidth) {\n let ScrollGrid = this.context.pluginHooks.scrollGridImpl;\n if (!ScrollGrid) {\n throw new Error('No ScrollGrid implementation');\n }\n let { props, context } = this;\n let stickyHeaderDates = !props.forPrint && getStickyHeaderDates(context.options);\n let stickyFooterScrollbar = !props.forPrint && getStickyFooterScrollbar(context.options);\n let sections = [];\n if (headerRowContent) {\n sections.push({\n type: 'header',\n key: 'header',\n isSticky: stickyHeaderDates,\n chunks: [{\n key: 'main',\n elRef: this.headerElRef,\n tableClassName: 'fc-col-header',\n rowContent: headerRowContent,\n }],\n });\n }\n sections.push({\n type: 'body',\n key: 'body',\n liquid: true,\n chunks: [{\n key: 'main',\n content: bodyContent,\n }],\n });\n if (stickyFooterScrollbar) {\n sections.push({\n type: 'footer',\n key: 'footer',\n isSticky: true,\n chunks: [{\n key: 'main',\n content: renderScrollShim,\n }],\n });\n }\n return (createElement(ViewContainer, { elClasses: ['fc-daygrid'], viewSpec: context.viewSpec },\n createElement(ScrollGrid, { liquid: !props.isHeightAuto && !props.forPrint, collapsibleWidth: props.forPrint, colGroups: [{ cols: [{ span: colCnt, minWidth: dayMinWidth }] }], sections: sections })));\n }\n}\n\nfunction splitSegsByRow(segs, rowCnt) {\n let byRow = [];\n for (let i = 0; i < rowCnt; i += 1) {\n byRow[i] = [];\n }\n for (let seg of segs) {\n byRow[seg.row].push(seg);\n }\n return byRow;\n}\nfunction splitSegsByFirstCol(segs, colCnt) {\n let byCol = [];\n for (let i = 0; i < colCnt; i += 1) {\n byCol[i] = [];\n }\n for (let seg of segs) {\n byCol[seg.firstCol].push(seg);\n }\n return byCol;\n}\nfunction splitInteractionByRow(ui, rowCnt) {\n let byRow = [];\n if (!ui) {\n for (let i = 0; i < rowCnt; i += 1) {\n byRow[i] = null;\n }\n }\n else {\n for (let i = 0; i < rowCnt; i += 1) {\n byRow[i] = {\n affectedInstances: ui.affectedInstances,\n isEvent: ui.isEvent,\n segs: [],\n };\n }\n for (let seg of ui.segs) {\n byRow[seg.row].segs.push(seg);\n }\n }\n return byRow;\n}\n\nconst DEFAULT_TABLE_EVENT_TIME_FORMAT = createFormatter({\n hour: 'numeric',\n minute: '2-digit',\n omitZeroMinute: true,\n meridiem: 'narrow',\n});\nfunction hasListItemDisplay(seg) {\n let { display } = seg.eventRange.ui;\n return display === 'list-item' || (display === 'auto' &&\n !seg.eventRange.def.allDay &&\n seg.firstCol === seg.lastCol && // can't be multi-day\n seg.isStart && // \"\n seg.isEnd // \"\n );\n}\n\nclass TableBlockEvent extends BaseComponent {\n render() {\n let { props } = this;\n return (createElement(StandardEvent, Object.assign({}, props, { elClasses: ['fc-daygrid-event', 'fc-daygrid-block-event', 'fc-h-event'], defaultTimeFormat: DEFAULT_TABLE_EVENT_TIME_FORMAT, defaultDisplayEventEnd: props.defaultDisplayEventEnd, disableResizing: !props.seg.eventRange.def.allDay })));\n }\n}\n\nclass TableListItemEvent extends BaseComponent {\n render() {\n let { props, context } = this;\n let { options } = context;\n let { seg } = props;\n let timeFormat = options.eventTimeFormat || DEFAULT_TABLE_EVENT_TIME_FORMAT;\n let timeText = buildSegTimeText(seg, timeFormat, context, true, props.defaultDisplayEventEnd);\n return (createElement(EventContainer, Object.assign({}, props, { elTag: \"a\", elClasses: ['fc-daygrid-event', 'fc-daygrid-dot-event'], elAttrs: getSegAnchorAttrs(props.seg, context), defaultGenerator: renderInnerContent, timeText: timeText, isResizing: false, isDateSelecting: false })));\n }\n}\nfunction renderInnerContent(renderProps) {\n return (createElement(Fragment, null,\n createElement(\"div\", { className: \"fc-daygrid-event-dot\", style: { borderColor: renderProps.borderColor || renderProps.backgroundColor } }),\n renderProps.timeText && (createElement(\"div\", { className: \"fc-event-time\" }, renderProps.timeText)),\n createElement(\"div\", { className: \"fc-event-title\" }, renderProps.event.title || createElement(Fragment, null, \"\\u00A0\"))));\n}\n\nclass TableCellMoreLink extends BaseComponent {\n constructor() {\n super(...arguments);\n this.compileSegs = memoize(compileSegs);\n }\n render() {\n let { props } = this;\n let { allSegs, invisibleSegs } = this.compileSegs(props.singlePlacements);\n return (createElement(MoreLinkContainer, { elClasses: ['fc-daygrid-more-link'], dateProfile: props.dateProfile, todayRange: props.todayRange, allDayDate: props.allDayDate, moreCnt: props.moreCnt, allSegs: allSegs, hiddenSegs: invisibleSegs, alignmentElRef: props.alignmentElRef, alignGridTop: props.alignGridTop, extraDateSpan: props.extraDateSpan, popoverContent: () => {\n let isForcedInvisible = (props.eventDrag ? props.eventDrag.affectedInstances : null) ||\n (props.eventResize ? props.eventResize.affectedInstances : null) ||\n {};\n return (createElement(Fragment, null, allSegs.map((seg) => {\n let instanceId = seg.eventRange.instance.instanceId;\n return (createElement(\"div\", { className: \"fc-daygrid-event-harness\", key: instanceId, style: {\n visibility: isForcedInvisible[instanceId] ? 'hidden' : '',\n } }, hasListItemDisplay(seg) ? (createElement(TableListItemEvent, Object.assign({ seg: seg, isDragging: false, isSelected: instanceId === props.eventSelection, defaultDisplayEventEnd: false }, getSegMeta(seg, props.todayRange)))) : (createElement(TableBlockEvent, Object.assign({ seg: seg, isDragging: false, isResizing: false, isDateSelecting: false, isSelected: instanceId === props.eventSelection, defaultDisplayEventEnd: false }, getSegMeta(seg, props.todayRange))))));\n })));\n } }));\n }\n}\nfunction compileSegs(singlePlacements) {\n let allSegs = [];\n let invisibleSegs = [];\n for (let placement of singlePlacements) {\n allSegs.push(placement.seg);\n if (!placement.isVisible) {\n invisibleSegs.push(placement.seg);\n }\n }\n return { allSegs, invisibleSegs };\n}\n\nconst DEFAULT_WEEK_NUM_FORMAT = createFormatter({ week: 'narrow' });\nclass TableCell extends DateComponent {\n constructor() {\n super(...arguments);\n this.rootElRef = createRef();\n this.state = {\n dayNumberId: getUniqueDomId(),\n };\n this.handleRootEl = (el) => {\n setRef(this.rootElRef, el);\n setRef(this.props.elRef, el);\n };\n }\n render() {\n let { context, props, state, rootElRef } = this;\n let { options } = context;\n let { date, dateProfile } = props;\n return (createElement(DayCellContainer, { elTag: \"td\", elRef: this.handleRootEl, elClasses: [\n 'fc-daygrid-day',\n ...(props.extraClassNames || []),\n ], elAttrs: Object.assign(Object.assign(Object.assign({}, props.extraDataAttrs), (props.showDayNumber ? { 'aria-labelledby': state.dayNumberId } : {})), { role: 'gridcell' }), defaultGenerator: renderTopInner, date: date, dateProfile: dateProfile, todayRange: props.todayRange, showDayNumber: props.showDayNumber, extraRenderProps: props.extraRenderProps }, (InnerContent, renderProps) => (createElement(\"div\", { className: \"fc-daygrid-day-frame fc-scrollgrid-sync-inner\", ref: props.innerElRef },\n props.showWeekNumber && (createElement(WeekNumberContainer, { elTag: \"a\", elClasses: ['fc-daygrid-week-number'], elAttrs: buildNavLinkAttrs(context, date, 'week'), date: date, defaultFormat: DEFAULT_WEEK_NUM_FORMAT })),\n Boolean(!renderProps.isDisabled &&\n (props.showDayNumber || hasCustomDayCellContent(options) || props.forceDayTop)) && (createElement(\"div\", { className: \"fc-daygrid-day-top\" },\n createElement(InnerContent, { elTag: \"a\", elClasses: ['fc-daygrid-day-number'], elAttrs: Object.assign(Object.assign({}, buildNavLinkAttrs(context, date)), { id: state.dayNumberId }) }))),\n createElement(\"div\", { className: \"fc-daygrid-day-events\", ref: props.fgContentElRef },\n props.fgContent,\n createElement(\"div\", { className: \"fc-daygrid-day-bottom\", style: { marginTop: props.moreMarginTop } },\n createElement(TableCellMoreLink, { allDayDate: date, singlePlacements: props.singlePlacements, moreCnt: props.moreCnt, alignmentElRef: rootElRef, alignGridTop: !props.showDayNumber, extraDateSpan: props.extraDateSpan, dateProfile: props.dateProfile, eventSelection: props.eventSelection, eventDrag: props.eventDrag, eventResize: props.eventResize, todayRange: props.todayRange }))),\n createElement(\"div\", { className: \"fc-daygrid-day-bg\" }, props.bgContent)))));\n }\n}\nfunction renderTopInner(props) {\n return props.dayNumberText || createElement(Fragment, null, \"\\u00A0\");\n}\n\nfunction computeFgSegPlacement(segs, // assumed already sorted\ndayMaxEvents, dayMaxEventRows, strictOrder, eventInstanceHeights, maxContentHeight, cells) {\n let hierarchy = new DayGridSegHierarchy();\n hierarchy.allowReslicing = true;\n hierarchy.strictOrder = strictOrder;\n if (dayMaxEvents === true || dayMaxEventRows === true) {\n hierarchy.maxCoord = maxContentHeight;\n hierarchy.hiddenConsumes = true;\n }\n else if (typeof dayMaxEvents === 'number') {\n hierarchy.maxStackCnt = dayMaxEvents;\n }\n else if (typeof dayMaxEventRows === 'number') {\n hierarchy.maxStackCnt = dayMaxEventRows;\n hierarchy.hiddenConsumes = true;\n }\n // create segInputs only for segs with known heights\n let segInputs = [];\n let unknownHeightSegs = [];\n for (let i = 0; i < segs.length; i += 1) {\n let seg = segs[i];\n let { instanceId } = seg.eventRange.instance;\n let eventHeight = eventInstanceHeights[instanceId];\n if (eventHeight != null) {\n segInputs.push({\n index: i,\n thickness: eventHeight,\n span: {\n start: seg.firstCol,\n end: seg.lastCol + 1,\n },\n });\n }\n else {\n unknownHeightSegs.push(seg);\n }\n }\n let hiddenEntries = hierarchy.addSegs(segInputs);\n let segRects = hierarchy.toRects();\n let { singleColPlacements, multiColPlacements, leftoverMargins } = placeRects(segRects, segs, cells);\n let moreCnts = [];\n let moreMarginTops = [];\n // add segs with unknown heights\n for (let seg of unknownHeightSegs) {\n multiColPlacements[seg.firstCol].push({\n seg,\n isVisible: false,\n isAbsolute: true,\n absoluteTop: 0,\n marginTop: 0,\n });\n for (let col = seg.firstCol; col <= seg.lastCol; col += 1) {\n singleColPlacements[col].push({\n seg: resliceSeg(seg, col, col + 1, cells),\n isVisible: false,\n isAbsolute: false,\n absoluteTop: 0,\n marginTop: 0,\n });\n }\n }\n // add the hidden entries\n for (let col = 0; col < cells.length; col += 1) {\n moreCnts.push(0);\n }\n for (let hiddenEntry of hiddenEntries) {\n let seg = segs[hiddenEntry.index];\n let hiddenSpan = hiddenEntry.span;\n multiColPlacements[hiddenSpan.start].push({\n seg: resliceSeg(seg, hiddenSpan.start, hiddenSpan.end, cells),\n isVisible: false,\n isAbsolute: true,\n absoluteTop: 0,\n marginTop: 0,\n });\n for (let col = hiddenSpan.start; col < hiddenSpan.end; col += 1) {\n moreCnts[col] += 1;\n singleColPlacements[col].push({\n seg: resliceSeg(seg, col, col + 1, cells),\n isVisible: false,\n isAbsolute: false,\n absoluteTop: 0,\n marginTop: 0,\n });\n }\n }\n // deal with leftover margins\n for (let col = 0; col < cells.length; col += 1) {\n moreMarginTops.push(leftoverMargins[col]);\n }\n return { singleColPlacements, multiColPlacements, moreCnts, moreMarginTops };\n}\n// rects ordered by top coord, then left\nfunction placeRects(allRects, segs, cells) {\n let rectsByEachCol = groupRectsByEachCol(allRects, cells.length);\n let singleColPlacements = [];\n let multiColPlacements = [];\n let leftoverMargins = [];\n for (let col = 0; col < cells.length; col += 1) {\n let rects = rectsByEachCol[col];\n // compute all static segs in singlePlacements\n let singlePlacements = [];\n let currentHeight = 0;\n let currentMarginTop = 0;\n for (let rect of rects) {\n let seg = segs[rect.index];\n singlePlacements.push({\n seg: resliceSeg(seg, col, col + 1, cells),\n isVisible: true,\n isAbsolute: false,\n absoluteTop: rect.levelCoord,\n marginTop: rect.levelCoord - currentHeight,\n });\n currentHeight = rect.levelCoord + rect.thickness;\n }\n // compute mixed static/absolute segs in multiPlacements\n let multiPlacements = [];\n currentHeight = 0;\n currentMarginTop = 0;\n for (let rect of rects) {\n let seg = segs[rect.index];\n let isAbsolute = rect.span.end - rect.span.start > 1; // multi-column?\n let isFirstCol = rect.span.start === col;\n currentMarginTop += rect.levelCoord - currentHeight; // amount of space since bottom of previous seg\n currentHeight = rect.levelCoord + rect.thickness; // height will now be bottom of current seg\n if (isAbsolute) {\n currentMarginTop += rect.thickness;\n if (isFirstCol) {\n multiPlacements.push({\n seg: resliceSeg(seg, rect.span.start, rect.span.end, cells),\n isVisible: true,\n isAbsolute: true,\n absoluteTop: rect.levelCoord,\n marginTop: 0,\n });\n }\n }\n else if (isFirstCol) {\n multiPlacements.push({\n seg: resliceSeg(seg, rect.span.start, rect.span.end, cells),\n isVisible: true,\n isAbsolute: false,\n absoluteTop: rect.levelCoord,\n marginTop: currentMarginTop, // claim the margin\n });\n currentMarginTop = 0;\n }\n }\n singleColPlacements.push(singlePlacements);\n multiColPlacements.push(multiPlacements);\n leftoverMargins.push(currentMarginTop);\n }\n return { singleColPlacements, multiColPlacements, leftoverMargins };\n}\nfunction groupRectsByEachCol(rects, colCnt) {\n let rectsByEachCol = [];\n for (let col = 0; col < colCnt; col += 1) {\n rectsByEachCol.push([]);\n }\n for (let rect of rects) {\n for (let col = rect.span.start; col < rect.span.end; col += 1) {\n rectsByEachCol[col].push(rect);\n }\n }\n return rectsByEachCol;\n}\nfunction resliceSeg(seg, spanStart, spanEnd, cells) {\n if (seg.firstCol === spanStart && seg.lastCol === spanEnd - 1) {\n return seg;\n }\n let eventRange = seg.eventRange;\n let origRange = eventRange.range;\n let slicedRange = intersectRanges(origRange, {\n start: cells[spanStart].date,\n end: addDays(cells[spanEnd - 1].date, 1),\n });\n return Object.assign(Object.assign({}, seg), { firstCol: spanStart, lastCol: spanEnd - 1, eventRange: {\n def: eventRange.def,\n ui: Object.assign(Object.assign({}, eventRange.ui), { durationEditable: false }),\n instance: eventRange.instance,\n range: slicedRange,\n }, isStart: seg.isStart && slicedRange.start.valueOf() === origRange.start.valueOf(), isEnd: seg.isEnd && slicedRange.end.valueOf() === origRange.end.valueOf() });\n}\nclass DayGridSegHierarchy extends SegHierarchy {\n constructor() {\n super(...arguments);\n // config\n this.hiddenConsumes = false;\n // allows us to keep hidden entries in the hierarchy so they take up space\n this.forceHidden = {};\n }\n addSegs(segInputs) {\n const hiddenSegs = super.addSegs(segInputs);\n const { entriesByLevel } = this;\n const excludeHidden = (entry) => !this.forceHidden[buildEntryKey(entry)];\n // remove the forced-hidden segs\n for (let level = 0; level < entriesByLevel.length; level += 1) {\n entriesByLevel[level] = entriesByLevel[level].filter(excludeHidden);\n }\n return hiddenSegs;\n }\n handleInvalidInsertion(insertion, entry, hiddenEntries) {\n const { entriesByLevel, forceHidden } = this;\n const { touchingEntry, touchingLevel, touchingLateral } = insertion;\n if (this.hiddenConsumes && touchingEntry) {\n const touchingEntryId = buildEntryKey(touchingEntry);\n // if not already hidden\n if (!forceHidden[touchingEntryId]) {\n if (this.allowReslicing) {\n const placeholderEntry = Object.assign(Object.assign({}, touchingEntry), { span: intersectSpans(touchingEntry.span, entry.span) });\n const placeholderEntryId = buildEntryKey(placeholderEntry);\n forceHidden[placeholderEntryId] = true;\n entriesByLevel[touchingLevel][touchingLateral] = placeholderEntry; // replace touchingEntry with our placeholder\n this.splitEntry(touchingEntry, entry, hiddenEntries); // split up the touchingEntry, reinsert it\n }\n else {\n forceHidden[touchingEntryId] = true;\n hiddenEntries.push(touchingEntry);\n }\n }\n }\n return super.handleInvalidInsertion(insertion, entry, hiddenEntries);\n }\n}\n\nclass TableRow extends DateComponent {\n constructor() {\n super(...arguments);\n this.cellElRefs = new RefMap(); // the \n this.frameElRefs = new RefMap(); // the fc-daygrid-day-frame\n this.fgElRefs = new RefMap(); // the fc-daygrid-day-events\n this.segHarnessRefs = new RefMap(); // indexed by \"instanceId:firstCol\"\n this.rootElRef = createRef();\n this.state = {\n framePositions: null,\n maxContentHeight: null,\n eventInstanceHeights: {},\n };\n this.handleResize = (isForced) => {\n if (isForced) {\n this.updateSizing(true); // isExternal=true\n }\n };\n }\n render() {\n let { props, state, context } = this;\n let { options } = context;\n let colCnt = props.cells.length;\n let businessHoursByCol = splitSegsByFirstCol(props.businessHourSegs, colCnt);\n let bgEventSegsByCol = splitSegsByFirstCol(props.bgEventSegs, colCnt);\n let highlightSegsByCol = splitSegsByFirstCol(this.getHighlightSegs(), colCnt);\n let mirrorSegsByCol = splitSegsByFirstCol(this.getMirrorSegs(), colCnt);\n let { singleColPlacements, multiColPlacements, moreCnts, moreMarginTops } = computeFgSegPlacement(sortEventSegs(props.fgEventSegs, options.eventOrder), props.dayMaxEvents, props.dayMaxEventRows, options.eventOrderStrict, state.eventInstanceHeights, state.maxContentHeight, props.cells);\n let isForcedInvisible = // TODO: messy way to compute this\n (props.eventDrag && props.eventDrag.affectedInstances) ||\n (props.eventResize && props.eventResize.affectedInstances) ||\n {};\n return (createElement(\"tr\", { ref: this.rootElRef, role: \"row\" },\n props.renderIntro && props.renderIntro(),\n props.cells.map((cell, col) => {\n let normalFgNodes = this.renderFgSegs(col, props.forPrint ? singleColPlacements[col] : multiColPlacements[col], props.todayRange, isForcedInvisible);\n let mirrorFgNodes = this.renderFgSegs(col, buildMirrorPlacements(mirrorSegsByCol[col], multiColPlacements), props.todayRange, {}, Boolean(props.eventDrag), Boolean(props.eventResize), false);\n return (createElement(TableCell, { key: cell.key, elRef: this.cellElRefs.createRef(cell.key), innerElRef: this.frameElRefs.createRef(cell.key) /* FF | problem, but okay to use for left/right. TODO: rename prop */, dateProfile: props.dateProfile, date: cell.date, showDayNumber: props.showDayNumbers, showWeekNumber: props.showWeekNumbers && col === 0, forceDayTop: props.showWeekNumbers /* even displaying weeknum for row, not necessarily day */, todayRange: props.todayRange, eventSelection: props.eventSelection, eventDrag: props.eventDrag, eventResize: props.eventResize, extraRenderProps: cell.extraRenderProps, extraDataAttrs: cell.extraDataAttrs, extraClassNames: cell.extraClassNames, extraDateSpan: cell.extraDateSpan, moreCnt: moreCnts[col], moreMarginTop: moreMarginTops[col], singlePlacements: singleColPlacements[col], fgContentElRef: this.fgElRefs.createRef(cell.key), fgContent: ( // Fragment scopes the keys\n createElement(Fragment, null,\n createElement(Fragment, null, normalFgNodes),\n createElement(Fragment, null, mirrorFgNodes))), bgContent: ( // Fragment scopes the keys\n createElement(Fragment, null,\n this.renderFillSegs(highlightSegsByCol[col], 'highlight'),\n this.renderFillSegs(businessHoursByCol[col], 'non-business'),\n this.renderFillSegs(bgEventSegsByCol[col], 'bg-event'))) }));\n })));\n }\n componentDidMount() {\n this.updateSizing(true);\n this.context.addResizeHandler(this.handleResize);\n }\n componentDidUpdate(prevProps, prevState) {\n let currentProps = this.props;\n this.updateSizing(!isPropsEqual(prevProps, currentProps));\n }\n componentWillUnmount() {\n this.context.removeResizeHandler(this.handleResize);\n }\n getHighlightSegs() {\n let { props } = this;\n if (props.eventDrag && props.eventDrag.segs.length) { // messy check\n return props.eventDrag.segs;\n }\n if (props.eventResize && props.eventResize.segs.length) { // messy check\n return props.eventResize.segs;\n }\n return props.dateSelectionSegs;\n }\n getMirrorSegs() {\n let { props } = this;\n if (props.eventResize && props.eventResize.segs.length) { // messy check\n return props.eventResize.segs;\n }\n return [];\n }\n renderFgSegs(col, segPlacements, todayRange, isForcedInvisible, isDragging, isResizing, isDateSelecting) {\n let { context } = this;\n let { eventSelection } = this.props;\n let { framePositions } = this.state;\n let defaultDisplayEventEnd = this.props.cells.length === 1; // colCnt === 1\n let isMirror = isDragging || isResizing || isDateSelecting;\n let nodes = [];\n if (framePositions) {\n for (let placement of segPlacements) {\n let { seg } = placement;\n let { instanceId } = seg.eventRange.instance;\n let key = instanceId + ':' + col;\n let isVisible = placement.isVisible && !isForcedInvisible[instanceId];\n let isAbsolute = placement.isAbsolute;\n let left = '';\n let right = '';\n if (isAbsolute) {\n if (context.isRtl) {\n right = 0;\n left = framePositions.lefts[seg.lastCol] - framePositions.lefts[seg.firstCol];\n }\n else {\n left = 0;\n right = framePositions.rights[seg.firstCol] - framePositions.rights[seg.lastCol];\n }\n }\n /*\n known bug: events that are force to be list-item but span multiple days still take up space in later columns\n todo: in print view, for multi-day events, don't display title within non-start/end segs\n */\n nodes.push(createElement(\"div\", { className: 'fc-daygrid-event-harness' + (isAbsolute ? ' fc-daygrid-event-harness-abs' : ''), key: key, ref: isMirror ? null : this.segHarnessRefs.createRef(key), style: {\n visibility: isVisible ? '' : 'hidden',\n marginTop: isAbsolute ? '' : placement.marginTop,\n top: isAbsolute ? placement.absoluteTop : '',\n left,\n right,\n } }, hasListItemDisplay(seg) ? (createElement(TableListItemEvent, Object.assign({ seg: seg, isDragging: isDragging, isSelected: instanceId === eventSelection, defaultDisplayEventEnd: defaultDisplayEventEnd }, getSegMeta(seg, todayRange)))) : (createElement(TableBlockEvent, Object.assign({ seg: seg, isDragging: isDragging, isResizing: isResizing, isDateSelecting: isDateSelecting, isSelected: instanceId === eventSelection, defaultDisplayEventEnd: defaultDisplayEventEnd }, getSegMeta(seg, todayRange))))));\n }\n }\n return nodes;\n }\n renderFillSegs(segs, fillType) {\n let { isRtl } = this.context;\n let { todayRange } = this.props;\n let { framePositions } = this.state;\n let nodes = [];\n if (framePositions) {\n for (let seg of segs) {\n let leftRightCss = isRtl ? {\n right: 0,\n left: framePositions.lefts[seg.lastCol] - framePositions.lefts[seg.firstCol],\n } : {\n left: 0,\n right: framePositions.rights[seg.firstCol] - framePositions.rights[seg.lastCol],\n };\n nodes.push(createElement(\"div\", { key: buildEventRangeKey(seg.eventRange), className: \"fc-daygrid-bg-harness\", style: leftRightCss }, fillType === 'bg-event' ?\n createElement(BgEvent, Object.assign({ seg: seg }, getSegMeta(seg, todayRange))) :\n renderFill(fillType)));\n }\n }\n return createElement(Fragment, {}, ...nodes);\n }\n updateSizing(isExternalSizingChange) {\n let { props, frameElRefs } = this;\n if (!props.forPrint &&\n props.clientWidth !== null // positioning ready?\n ) {\n if (isExternalSizingChange) {\n let frameEls = props.cells.map((cell) => frameElRefs.currentMap[cell.key]);\n if (frameEls.length) {\n let originEl = this.rootElRef.current;\n this.setState({\n framePositions: new PositionCache(originEl, frameEls, true, // isHorizontal\n false),\n });\n }\n }\n const oldInstanceHeights = this.state.eventInstanceHeights;\n const newInstanceHeights = this.queryEventInstanceHeights();\n const limitByContentHeight = props.dayMaxEvents === true || props.dayMaxEventRows === true;\n this.safeSetState({\n // HACK to prevent oscillations of events being shown/hidden from max-event-rows\n // Essentially, once you compute an element's height, never null-out.\n // TODO: always display all events, as visibility:hidden?\n eventInstanceHeights: Object.assign(Object.assign({}, oldInstanceHeights), newInstanceHeights),\n maxContentHeight: limitByContentHeight ? this.computeMaxContentHeight() : null,\n });\n }\n }\n queryEventInstanceHeights() {\n let segElMap = this.segHarnessRefs.currentMap;\n let eventInstanceHeights = {};\n // get the max height amongst instance segs\n for (let key in segElMap) {\n let height = Math.round(segElMap[key].getBoundingClientRect().height);\n let instanceId = key.split(':')[0]; // deconstruct how renderFgSegs makes the key\n eventInstanceHeights[instanceId] = Math.max(eventInstanceHeights[instanceId] || 0, height);\n }\n return eventInstanceHeights;\n }\n computeMaxContentHeight() {\n let firstKey = this.props.cells[0].key;\n let cellEl = this.cellElRefs.currentMap[firstKey];\n let fcContainerEl = this.fgElRefs.currentMap[firstKey];\n return cellEl.getBoundingClientRect().bottom - fcContainerEl.getBoundingClientRect().top;\n }\n getCellEls() {\n let elMap = this.cellElRefs.currentMap;\n return this.props.cells.map((cell) => elMap[cell.key]);\n }\n}\nTableRow.addStateEquality({\n eventInstanceHeights: isPropsEqual,\n});\nfunction buildMirrorPlacements(mirrorSegs, colPlacements) {\n if (!mirrorSegs.length) {\n return [];\n }\n let topsByInstanceId = buildAbsoluteTopHash(colPlacements); // TODO: cache this at first render?\n return mirrorSegs.map((seg) => ({\n seg,\n isVisible: true,\n isAbsolute: true,\n absoluteTop: topsByInstanceId[seg.eventRange.instance.instanceId],\n marginTop: 0,\n }));\n}\nfunction buildAbsoluteTopHash(colPlacements) {\n let topsByInstanceId = {};\n for (let placements of colPlacements) {\n for (let placement of placements) {\n topsByInstanceId[placement.seg.eventRange.instance.instanceId] = placement.absoluteTop;\n }\n }\n return topsByInstanceId;\n}\n\nclass Table extends DateComponent {\n constructor() {\n super(...arguments);\n this.splitBusinessHourSegs = memoize(splitSegsByRow);\n this.splitBgEventSegs = memoize(splitSegsByRow);\n this.splitFgEventSegs = memoize(splitSegsByRow);\n this.splitDateSelectionSegs = memoize(splitSegsByRow);\n this.splitEventDrag = memoize(splitInteractionByRow);\n this.splitEventResize = memoize(splitInteractionByRow);\n this.rowRefs = new RefMap();\n this.handleRootEl = (rootEl) => {\n this.rootEl = rootEl;\n if (rootEl) {\n this.context.registerInteractiveComponent(this, {\n el: rootEl,\n isHitComboAllowed: this.props.isHitComboAllowed,\n });\n }\n else {\n this.context.unregisterInteractiveComponent(this);\n }\n };\n }\n render() {\n let { props } = this;\n let { dateProfile, dayMaxEventRows, dayMaxEvents, expandRows } = props;\n let rowCnt = props.cells.length;\n let businessHourSegsByRow = this.splitBusinessHourSegs(props.businessHourSegs, rowCnt);\n let bgEventSegsByRow = this.splitBgEventSegs(props.bgEventSegs, rowCnt);\n let fgEventSegsByRow = this.splitFgEventSegs(props.fgEventSegs, rowCnt);\n let dateSelectionSegsByRow = this.splitDateSelectionSegs(props.dateSelectionSegs, rowCnt);\n let eventDragByRow = this.splitEventDrag(props.eventDrag, rowCnt);\n let eventResizeByRow = this.splitEventResize(props.eventResize, rowCnt);\n let limitViaBalanced = dayMaxEvents === true || dayMaxEventRows === true;\n // if rows can't expand to fill fixed height, can't do balanced-height event limit\n // TODO: best place to normalize these options?\n if (limitViaBalanced && !expandRows) {\n limitViaBalanced = false;\n dayMaxEventRows = null;\n dayMaxEvents = null;\n }\n let classNames = [\n 'fc-daygrid-body',\n limitViaBalanced ? 'fc-daygrid-body-balanced' : 'fc-daygrid-body-unbalanced',\n expandRows ? '' : 'fc-daygrid-body-natural', // will height of one row depend on the others?\n ];\n return (createElement(\"div\", { className: classNames.join(' '), ref: this.handleRootEl, style: {\n // these props are important to give this wrapper correct dimensions for interactions\n // TODO: if we set it here, can we avoid giving to inner tables?\n width: props.clientWidth,\n minWidth: props.tableMinWidth,\n } },\n createElement(NowTimer, { unit: \"day\" }, (nowDate, todayRange) => (createElement(Fragment, null,\n createElement(\"table\", { role: \"presentation\", className: \"fc-scrollgrid-sync-table\", style: {\n width: props.clientWidth,\n minWidth: props.tableMinWidth,\n height: expandRows ? props.clientHeight : '',\n } },\n props.colGroupNode,\n createElement(\"tbody\", { role: \"presentation\" }, props.cells.map((cells, row) => (createElement(TableRow, { ref: this.rowRefs.createRef(row), key: cells.length\n ? cells[0].date.toISOString() /* best? or put key on cell? or use diff formatter? */\n : row // in case there are no cells (like when resource view is loading)\n , showDayNumbers: rowCnt > 1, showWeekNumbers: props.showWeekNumbers, todayRange: todayRange, dateProfile: dateProfile, cells: cells, renderIntro: props.renderRowIntro, businessHourSegs: businessHourSegsByRow[row], eventSelection: props.eventSelection, bgEventSegs: bgEventSegsByRow[row].filter(isSegAllDay) /* hack */, fgEventSegs: fgEventSegsByRow[row], dateSelectionSegs: dateSelectionSegsByRow[row], eventDrag: eventDragByRow[row], eventResize: eventResizeByRow[row], dayMaxEvents: dayMaxEvents, dayMaxEventRows: dayMaxEventRows, clientWidth: props.clientWidth, clientHeight: props.clientHeight, forPrint: props.forPrint }))))))))));\n }\n // Hit System\n // ----------------------------------------------------------------------------------------------------\n prepareHits() {\n this.rowPositions = new PositionCache(this.rootEl, this.rowRefs.collect().map((rowObj) => rowObj.getCellEls()[0]), // first cell el in each row. TODO: not optimal\n false, true);\n this.colPositions = new PositionCache(this.rootEl, this.rowRefs.currentMap[0].getCellEls(), // cell els in first row\n true, // horizontal\n false);\n }\n queryHit(positionLeft, positionTop) {\n let { colPositions, rowPositions } = this;\n let col = colPositions.leftToIndex(positionLeft);\n let row = rowPositions.topToIndex(positionTop);\n if (row != null && col != null) {\n let cell = this.props.cells[row][col];\n return {\n dateProfile: this.props.dateProfile,\n dateSpan: Object.assign({ range: this.getCellRange(row, col), allDay: true }, cell.extraDateSpan),\n dayEl: this.getCellEl(row, col),\n rect: {\n left: colPositions.lefts[col],\n right: colPositions.rights[col],\n top: rowPositions.tops[row],\n bottom: rowPositions.bottoms[row],\n },\n layer: 0,\n };\n }\n return null;\n }\n getCellEl(row, col) {\n return this.rowRefs.currentMap[row].getCellEls()[col]; // TODO: not optimal\n }\n getCellRange(row, col) {\n let start = this.props.cells[row][col].date;\n let end = addDays(start, 1);\n return { start, end };\n }\n}\nfunction isSegAllDay(seg) {\n return seg.eventRange.def.allDay;\n}\n\nclass DayTableSlicer extends Slicer {\n constructor() {\n super(...arguments);\n this.forceDayIfListItem = true;\n }\n sliceRange(dateRange, dayTableModel) {\n return dayTableModel.sliceRange(dateRange);\n }\n}\n\nclass DayTable extends DateComponent {\n constructor() {\n super(...arguments);\n this.slicer = new DayTableSlicer();\n this.tableRef = createRef();\n }\n render() {\n let { props, context } = this;\n return (createElement(Table, Object.assign({ ref: this.tableRef }, this.slicer.sliceProps(props, props.dateProfile, props.nextDayThreshold, context, props.dayTableModel), { dateProfile: props.dateProfile, cells: props.dayTableModel.cells, colGroupNode: props.colGroupNode, tableMinWidth: props.tableMinWidth, renderRowIntro: props.renderRowIntro, dayMaxEvents: props.dayMaxEvents, dayMaxEventRows: props.dayMaxEventRows, showWeekNumbers: props.showWeekNumbers, expandRows: props.expandRows, headerAlignElRef: props.headerAlignElRef, clientWidth: props.clientWidth, clientHeight: props.clientHeight, forPrint: props.forPrint })));\n }\n}\n\nclass DayTableView extends TableView {\n constructor() {\n super(...arguments);\n this.buildDayTableModel = memoize(buildDayTableModel);\n this.headerRef = createRef();\n this.tableRef = createRef();\n }\n render() {\n let { options, dateProfileGenerator } = this.context;\n let { props } = this;\n let dayTableModel = this.buildDayTableModel(props.dateProfile, dateProfileGenerator);\n let headerContent = options.dayHeaders && (createElement(DayHeader, { ref: this.headerRef, dateProfile: props.dateProfile, dates: dayTableModel.headerDates, datesRepDistinctDays: dayTableModel.rowCnt === 1 }));\n let bodyContent = (contentArg) => (createElement(DayTable, { ref: this.tableRef, dateProfile: props.dateProfile, dayTableModel: dayTableModel, businessHours: props.businessHours, dateSelection: props.dateSelection, eventStore: props.eventStore, eventUiBases: props.eventUiBases, eventSelection: props.eventSelection, eventDrag: props.eventDrag, eventResize: props.eventResize, nextDayThreshold: options.nextDayThreshold, colGroupNode: contentArg.tableColGroupNode, tableMinWidth: contentArg.tableMinWidth, dayMaxEvents: options.dayMaxEvents, dayMaxEventRows: options.dayMaxEventRows, showWeekNumbers: options.weekNumbers, expandRows: !props.isHeightAuto, headerAlignElRef: this.headerElRef, clientWidth: contentArg.clientWidth, clientHeight: contentArg.clientHeight, forPrint: props.forPrint }));\n return options.dayMinWidth\n ? this.renderHScrollLayout(headerContent, bodyContent, dayTableModel.colCnt, options.dayMinWidth)\n : this.renderSimpleLayout(headerContent, bodyContent);\n }\n}\nfunction buildDayTableModel(dateProfile, dateProfileGenerator) {\n let daySeries = new DaySeriesModel(dateProfile.renderRange, dateProfileGenerator);\n return new DayTableModel(daySeries, /year|month|week/.test(dateProfile.currentRangeUnit));\n}\n\nexport { DayTableView as DayGridView, DayTable, DayTableSlicer, Table, TableView, buildDayTableModel };\n","import { createPlugin } from '@fullcalendar/core/index.js';\nimport { DayGridView as DayTableView } from './internal.js';\nimport { DateProfileGenerator, addWeeks, diffWeeks, injectStyles } from '@fullcalendar/core/internal.js';\nimport '@fullcalendar/core/preact.js';\n\nclass TableDateProfileGenerator extends DateProfileGenerator {\n // Computes the date range that will be rendered.\n buildRenderRange(currentRange, currentRangeUnit, isRangeAllDay) {\n let { dateEnv } = this.props;\n let renderRange = super.buildRenderRange(currentRange, currentRangeUnit, isRangeAllDay);\n let start = renderRange.start;\n let end = renderRange.end;\n let endOfWeek;\n // year and month views should be aligned with weeks. this is already done for week\n if (/^(year|month)$/.test(currentRangeUnit)) {\n start = dateEnv.startOfWeek(start);\n // make end-of-week if not already\n endOfWeek = dateEnv.startOfWeek(end);\n if (endOfWeek.valueOf() !== end.valueOf()) {\n end = addWeeks(endOfWeek, 1);\n }\n }\n // ensure 6 weeks\n if (this.props.monthMode &&\n this.props.fixedWeekCount) {\n let rowCnt = Math.ceil(// could be partial weeks due to hiddenDays\n diffWeeks(start, end));\n end = addWeeks(end, 6 - rowCnt);\n }\n return { start, end };\n }\n}\n\nvar css_248z = \":root{--fc-daygrid-event-dot-width:8px}.fc-daygrid-day-events:after,.fc-daygrid-day-events:before,.fc-daygrid-day-frame:after,.fc-daygrid-day-frame:before,.fc-daygrid-event-harness:after,.fc-daygrid-event-harness:before{clear:both;content:\\\"\\\";display:table}.fc .fc-daygrid-body{position:relative;z-index:1}.fc .fc-daygrid-day.fc-day-today{background-color:var(--fc-today-bg-color)}.fc .fc-daygrid-day-frame{min-height:100%;position:relative}.fc .fc-daygrid-day-top{display:flex;flex-direction:row-reverse}.fc .fc-day-other .fc-daygrid-day-top{opacity:.3}.fc .fc-daygrid-day-number{padding:4px;position:relative;z-index:4}.fc .fc-daygrid-day-events{margin-top:1px}.fc .fc-daygrid-body-balanced .fc-daygrid-day-events{left:0;position:absolute;right:0}.fc .fc-daygrid-body-unbalanced .fc-daygrid-day-events{min-height:2em;position:relative}.fc .fc-daygrid-body-natural .fc-daygrid-day-events{margin-bottom:1em}.fc .fc-daygrid-event-harness{position:relative}.fc .fc-daygrid-event-harness-abs{left:0;position:absolute;right:0;top:0}.fc .fc-daygrid-bg-harness{bottom:0;position:absolute;top:0}.fc .fc-daygrid-day-bg .fc-non-business{z-index:1}.fc .fc-daygrid-day-bg .fc-bg-event{z-index:2}.fc .fc-daygrid-day-bg .fc-highlight{z-index:3}.fc .fc-daygrid-event{margin-top:1px;z-index:6}.fc .fc-daygrid-event.fc-event-mirror{z-index:7}.fc .fc-daygrid-day-bottom{font-size:.85em;padding:2px 3px 0}.fc .fc-daygrid-day-bottom:before{clear:both;content:\\\"\\\";display:table}.fc .fc-daygrid-more-link{cursor:pointer;position:relative;z-index:4}.fc .fc-daygrid-week-number{background-color:var(--fc-neutral-bg-color);color:var(--fc-neutral-text-color);min-width:1.5em;padding:2px;position:absolute;text-align:center;top:0;z-index:5}.fc .fc-more-popover .fc-popover-body{min-width:220px;padding:10px}.fc-direction-ltr .fc-daygrid-event.fc-event-start,.fc-direction-rtl .fc-daygrid-event.fc-event-end{margin-left:2px}.fc-direction-ltr .fc-daygrid-event.fc-event-end,.fc-direction-rtl .fc-daygrid-event.fc-event-start{margin-right:2px}.fc-direction-ltr .fc-daygrid-week-number{border-radius:0 0 3px 0;left:0}.fc-direction-rtl .fc-daygrid-week-number{border-radius:0 0 0 3px;right:0}.fc-liquid-hack .fc-daygrid-day-frame{position:static}.fc-daygrid-event{border-radius:3px;font-size:var(--fc-small-font-size);position:relative;white-space:nowrap}.fc-daygrid-block-event .fc-event-time{font-weight:700}.fc-daygrid-block-event .fc-event-time,.fc-daygrid-block-event .fc-event-title{padding:1px}.fc-daygrid-dot-event{align-items:center;display:flex;padding:2px 0}.fc-daygrid-dot-event .fc-event-title{flex-grow:1;flex-shrink:1;font-weight:700;min-width:0;overflow:hidden}.fc-daygrid-dot-event.fc-event-mirror,.fc-daygrid-dot-event:hover{background:rgba(0,0,0,.1)}.fc-daygrid-dot-event.fc-event-selected:before{bottom:-10px;top:-10px}.fc-daygrid-event-dot{border:calc(var(--fc-daygrid-event-dot-width)/2) solid var(--fc-event-border-color);border-radius:calc(var(--fc-daygrid-event-dot-width)/2);box-sizing:content-box;height:0;margin:0 4px;width:0}.fc-direction-ltr .fc-daygrid-event .fc-event-time{margin-right:3px}.fc-direction-rtl .fc-daygrid-event .fc-event-time{margin-left:3px}\";\ninjectStyles(css_248z);\n\nvar index = createPlugin({\n name: '@fullcalendar/daygrid',\n initialView: 'dayGridMonth',\n views: {\n dayGrid: {\n component: DayTableView,\n dateProfileGeneratorClass: TableDateProfileGenerator,\n },\n dayGridDay: {\n type: 'dayGrid',\n duration: { days: 1 },\n },\n dayGridWeek: {\n type: 'dayGrid',\n duration: { weeks: 1 },\n },\n dayGridMonth: {\n type: 'dayGrid',\n duration: { months: 1 },\n monthMode: true,\n fixedWeekCount: true,\n },\n },\n});\n\nexport { index as default };\n","import { render } from \"./a-project-calendar.vue?vue&type=template&id=2e121bf3&scoped=true\"\nimport script from \"./a-project-calendar.vue?vue&type=script&lang=js\"\nexport * from \"./a-project-calendar.vue?vue&type=script&lang=js\"\n\nimport \"./a-project-calendar.vue?vue&type=style&index=0&id=2e121bf3&lang=sass&scoped=true\"\n\nimport exportComponent from \"/Users/romankravarik/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-2e121bf3\"]])\n\nexport default __exports__","// Styles\nimport './VSwitch.sass'\n\n// Components\nimport { filterControlProps, makeSelectionControlProps, VSelectionControl } from '@/components/VSelectionControl/VSelectionControl'\nimport { filterInputProps, makeVInputProps, VInput } from '@/components/VInput/VInput'\nimport { VProgressCircular } from '@/components/VProgressCircular'\n\n// Composables\nimport { LoaderSlot, useLoader } from '@/composables/loader'\nimport { useFocus } from '@/composables/focus'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utility\nimport { computed, ref } from 'vue'\nimport { defineComponent, filterInputAttrs, getUid, useRender } from '@/util'\n\nexport const VSwitch = defineComponent({\n name: 'VSwitch',\n\n inheritAttrs: false,\n\n props: {\n indeterminate: Boolean,\n inset: Boolean,\n flat: Boolean,\n loading: {\n type: [Boolean, String],\n default: false,\n },\n\n ...makeVInputProps(),\n ...makeSelectionControlProps(),\n },\n\n emits: {\n 'update:focused': (focused: boolean) => true,\n 'update:modelValue': () => true,\n 'update:indeterminate': (val: boolean) => true,\n },\n\n setup (props, { attrs, slots }) {\n const indeterminate = useProxiedModel(props, 'indeterminate')\n const model = useProxiedModel(props, 'modelValue')\n const { loaderClasses } = useLoader(props)\n const { isFocused, focus, blur } = useFocus(props)\n\n const loaderColor = computed(() => {\n return typeof props.loading === 'string' && props.loading !== ''\n ? props.loading\n : props.color\n })\n\n const uid = getUid()\n const id = computed(() => props.id || `switch-${uid}`)\n\n function onChange () {\n if (indeterminate.value) {\n indeterminate.value = false\n }\n }\n\n useRender(() => {\n const [inputAttrs, controlAttrs] = filterInputAttrs(attrs)\n const [inputProps, _1] = filterInputProps(props)\n const [controlProps, _2] = filterControlProps(props)\n const control = ref()\n\n function onClick () {\n control.value?.input?.click()\n }\n\n return (\n \n {{\n ...slots,\n default: ({\n id,\n isDisabled,\n isReadonly,\n isValid,\n }) => (\n \n {{\n ...slots,\n default: () => (),\n input: ({ textColorClasses, textColorStyles }) => (\n \n { props.loading && (\n \n { slotProps => (\n slots.loader\n ? slots.loader(slotProps)\n : (\n \n )\n )}\n \n ) }\n \n ),\n }}\n \n ),\n }}\n \n )\n })\n\n return {}\n },\n})\n\nexport type VSwitch = InstanceType\n","\n\t\n\t\t\n\n\t\t\n\n\t\t\n\n\t\t\n\n\t\t\n\n\t\t\n\t\n\n\n\n\n\n","import { render } from \"./a-project-filter.vue?vue&type=template&id=d903f508&scoped=true\"\nimport script from \"./a-project-filter.vue?vue&type=script&lang=js\"\nexport * from \"./a-project-filter.vue?vue&type=script&lang=js\"\n\nimport \"./a-project-filter.vue?vue&type=style&index=0&id=d903f508&lang=sass&scoped=true\"\n\nimport exportComponent from \"/Users/romankravarik/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-d903f508\"]])\n\nexport default __exports__","import { render } from \"./projects.vue?vue&type=template&id=322213a1&scoped=true\"\nimport script from \"./projects.vue?vue&type=script&lang=js\"\nexport * from \"./projects.vue?vue&type=script&lang=js\"\n\nimport \"./projects.vue?vue&type=style&index=0&id=322213a1&lang=sass&scoped=true\"\n\nimport exportComponent from \"/Users/romankravarik/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-322213a1\"]])\n\nexport default __exports__"],"names":["data","header","initialized","marginTop","calendar_previousScrollPosition","isVisible","unmounted","this","$refs","page","querySelector","removeEventListener","handleScroll","methods","_initScrollListener","repeat","calendar","setTimeout","addEventListener","_handleScroll","scrollTop","e","document","target","showHeader","offsetHeight","Math","abs","hideHeader","style","transition","ref","_createElementBlock","_hoisted_1","_ctx","getters","_createBlock","_component_A_project_filter","onFilterChanged","$options","_createVNode","_component_W_loadable","class","content","emptyMessage","_component_A_project_calendar","events","month","$data","onOpenDetail","id","_component_V_full_calendar","options","slice","vnodeId","isValidElement","rerenderQueue","prevDebounce","i","EMPTY_OBJ","EMPTY_ARR","IS_NON_DIMENSIONAL","assign","obj","props","removeNode","node","parentNode","removeChild","createElement","type","children","key","normalizedProps","arguments","length","call","defaultProps","createVNode","original","vnode","__k","__","__b","__e","__d","__c","__h","constructor","__v","createRef","current","Fragment","Component","context","getDomSibling","childIndex","indexOf","sibling","updateParentDomPointers","child","base","enqueueRender","c","push","process","debounceRendering","queue","__r","sort","a","b","some","component","commitQueue","oldVNode","oldDom","parentDom","__P","diff","ownerSVGElement","commitRoot","diffChildren","renderResult","newParentVNode","oldParentVNode","globalContext","isSvg","excessDomChildren","isHydrating","j","childVNode","newDom","firstChildDom","refs","oldChildren","oldChildrenLength","Array","isArray","reorderChildren","placeChild","unmount","applyRef","tmp","toChildArray","out","nextDom","sibDom","outer","appendChild","nextSibling","insertBefore","diffProps","dom","newProps","oldProps","hydrate","setProperty","setStyle","value","test","name","oldValue","useCapture","o","cssText","replace","toLowerCase","l","eventProxyCapture","eventProxy","removeAttribute","setAttribute","event","newVNode","isNew","oldState","snapshot","clearProcessingException","provider","componentContext","renderHook","count","newType","contextType","__E","prototype","render","doRender","sub","state","getDerivedStateFromProps","__s","componentWillMount","componentDidMount","componentWillReceiveProps","shouldComponentUpdate","forEach","_sb","componentWillUpdate","componentDidUpdate","getChildContext","getSnapshotBeforeUpdate","diffElementNodes","diffed","root","cb","oldHtml","newHtml","nodeType","localName","createTextNode","createElementNS","is","childNodes","dangerouslySetInnerHTML","attributes","__html","innerHTML","checked","parentVNode","skipRemove","r","componentWillUnmount","replaceNode","firstChild","createContext","defaultValue","contextId","Consumer","contextValue","Provider","subs","ctx","_props","old","splice","error","errorInfo","ctor","handled","getDerivedStateFromError","setState","componentDidCatch","update","callback","s","forceUpdate","currentComponent","previousComponent","prevRaf","afterPaintEffects","EMPTY","oldBeforeDiff","oldBeforeRender","oldAfterDiff","oldCommit","oldBeforeUnmount","flushAfterPaintEffects","shift","__H","invokeCleanup","invokeEffect","hooks","hookItem","__N","_pendingArgs","afterNextFrame","__V","filter","hasErrored","HAS_RAF","requestAnimationFrame","raf","done","clearTimeout","timeout","cancelAnimationFrame","hook","comp","cleanup","shallowDiffers","PureComponent","p","isPureReactComponent","oldDiffHook","__f","Symbol","for","oldCatchError","then","oldUnmount","detachedClone","detachedParent","effect","map","removeOriginal","originalParent","Suspense","_suspenders","suspended","__a","SuspenseList","_next","_map","__R","promise","suspendingVNode","suspendingComponent","resolve","resolved","onResolved","onSuspensionComplete","__u","suspendedVNode","pop","wasHydrating","detachedComponent","fallback","list","delete","revealOrder","size","ContextProvider","Portal","_this","container","_container","_temp","before","createPortal","el","containerInfo","delegated","get","unsuspend","wrappedUnsuspend","Map","reverse","set","REACT_ELEMENT_TYPE","CAMEL_PROPS","IS_DOM","onChangeInputType","Object","defineProperty","configurable","v","writable","oldEventHook","empty","isPropagationStopped","cancelBubble","isDefaultPrevented","defaultPrevented","persist","nativeEvent","classNameDescriptor","oldVNodeHook","nonCustomElement","multiple","selected","className","enumerable","$$typeof","injectStyles","css","head","getElementsByTagName","styleSheet","DelayedRunner","drainedOption","isRunning","isDirty","pauseDepths","timeoutId","request","delay","isPaused","tryDrain","bind","pause","scope","resume","force","depth","keys","drained","clear","hasOwnProperty","mergeProps","propObjs","complexPropsMap","dest","complexObjs","val","unshift","undefined","filterHash","hash","func","filtered","mapHash","newHash","arrayToHash","item","hashValuesToArray","isPropsEqual","obj0","obj1","HANDLER_RE","isNonHandlerPropsEqual","getUnequalProps","compareObjs","equalityFuncs","isObjValsEqual","val0","val1","comparator","collectFromHash","startIndex","endIndex","step","res","isArraysEqual","a0","a1","equalityFunc","len","memoize","workerFunc","resEquality","teardownFunc","currentArgs","currentRes","newArgs","apply","memoizeObjArg","currentArg","newArg","removeElement","elementClosest","selector","closest","documentElement","contains","elementMatches","parentElement","method","matches","matchesSelector","msMatchesSelector","findElements","containers","HTMLElement","allMatches","querySelectorAll","PIXEL_PROP_RE","applyStyle","propName","applyStyleProp","getEventTargetViaRoot","ev","_a","_b","composedPath","guid$1","getUniqueDomId","buildDelegationHandler","handler","matchedChild","listenBySelector","eventType","attachedHandler","listenToHoverBySelector","onMouseEnter","onMouseLeave","currentMatchedChild","mouseOverEv","realOnMouseLeave","mouseLeaveEv","createAriaClickAttrs","onClick","createAriaKeyboardAttrs","tabIndex","onKeyDown","preventDefault","guidNumber","guid","String","parseFieldSpecs","input","token","specs","tokens","split","charAt","field","substring","order","compareByFieldSpecs","fieldSpecs","cmp","compareByFieldSpec","fieldSpec","flexibleCompare","localeCompare","padStart","substr","formatWithOrdinals","formatter","args","fallbackText","reduce","str","arg","index","isInt","n","computeSmallestCellWidth","cellEl","allWidthEl","contentWidthEl","Error","getBoundingClientRect","width","DAY_IDS","addWeeks","m","dateToUtcArray","arrayToUtcDate","addDays","addMs","diffWeeks","m0","m1","diffDays","valueOf","diffHours","diffMinutes","diffSeconds","diffDayAndTime","m0day","startOfDay","m1day","years","months","days","round","milliseconds","diffWholeWeeks","d","diffWholeDays","timeAsMs","getUTCFullYear","getUTCMonth","getUTCDate","startOfHour","getUTCHours","startOfMinute","getUTCMinutes","startOfSecond","getUTCSeconds","weekOfYear","marker","dow","doy","y","w","weekOfGivenYear","nextW","min","year","firstWeekStart","firstWeekOffset","dayStart","floor","fwd","fwdlw","getUTCDay","dateToLocalArray","date","getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","getMilliseconds","arrayToLocalDate","Date","getUTCMilliseconds","concat","UTC","isValidDate","isNaN","calendarSystemClassMap","registerCalendarSystem","theClass","createCalendarSystem","GregorianCalendarSystem","getMarkerYear","getMarkerMonth","getMarkerDay","arrayToMarker","arr","markerToArray","PARSE_RE","createDuration","unit","parseString","parseObject","exec","sign","parseInt","duration","day","hours","hour","minutes","minute","seconds","second","millisecond","ms","weeks","week","specifiedWeeks","durationsEqual","d0","d1","subtractDurations","asRoughYears","dur","asRoughDays","asRoughMonths","asRoughMs","greatestDurationDenominator","buildIsoString","timeZoneOffset","stripZeroTime","toISOString","formatTimeZoneOffset","formatDayString","doIso","mins","ISO_RE","parse","Number","isTimeUnspecified","DateEnv","settings","timeZone","isNamedTimeZone","namedTimeZoneImpl","canComputeOffset","Boolean","calendarSystem","locale","weekDow","weekDoy","weekNumberCalculation","firstDay","weekNumberFunc","weekText","weekTextLong","cmdFormatter","defaultSeparator","createMarker","meta","createMarkerMeta","createNowMarker","timestampToMarker","forcedTzo","parts","getYear","add","subtract","addYears","addMonths","diffWholeYears","diffWholeMonths","greatestWholeUnit","countDurationsBetween","startOf","startOfYear","startOfMonth","startOfWeek","computeWeekNumber","toDate","format","dateOptions","offsetForMarker","formatRange","start","end","isEndExclusive","forcedStartTzo","forcedEndTzo","formatIso","extraOptions","omitTimeZoneOffset","omitTime","timestampToArray","getTimezoneOffset","offsetForArray","Theme","calendarOptions","iconOverrideOption","setIconOverride","iconOverrideHash","iconClassesCopy","buttonName","iconClasses","applyIconOverridePrefix","prefix","iconOverridePrefix","getClass","classes","getIconClass","isRtl","rtlIconClasses","baseIconClass","getCustomButtonIconClass","customButtonProps","iconOverrideCustomButtonOption","EXTENDED_SETTINGS_AND_SEVERITIES","separator","omitZeroMinute","meridiem","omitCommas","STANDARD_DATE_PROP_SEVERITIES","timeZoneName","era","weekday","MERIDIEM_RE","COMMA_RE","MULTI_SPACE_RE","LTR_RE","UTC_RE","NativeFormatter","formatSettings","standardDateProps","extendedSettings","severity","max","buildFormattingFunc","betterDefaultSeparator","diffSeverity","computeMarkerDiffSeverity","biggestUnitForPartial","full0","full1","partialDateProps","computePartialFormattingOptions","partialFormattingFunc","partial0","partial1","insertion","findCommonInsertion","after","getLargestUnit","standardDatePropCnt","formatWeekNumber","buildNativeFormattingFunc","sanitizeSettings","zeroFormat","normalFormat","Intl","DateTimeFormat","codes","zeroProps","postProcess","injectTzoStr","trim","toLocaleLowerCase","tzoStr","replaced","num","display","simpleNumberFormat","direction","join","ca","biggestUnit","partialOptions","i0","found0","before0","after0","i1","found1","before1","after1","expandZonedMarker","dateInfo","array","createVerboseFormattingArg","startInfo","endInfo","localeCodes","CmdFormatter","cmdStr","FuncFormatter","createFormatter","BASE_OPTION_REFINERS","navLinkDayClick","identity","navLinkWeekClick","bootstrapFontAwesome","buttonIcons","customButtons","defaultAllDayEventDuration","defaultTimedEventDuration","nextDayThreshold","scrollTime","scrollTimeReset","slotMinTime","slotMaxTime","dayPopoverFormat","slotDuration","snapDuration","headerToolbar","footerToolbar","defaultRangeSeparator","titleRangeSeparator","forceEventDuration","dayHeaders","dayHeaderFormat","dayHeaderClassNames","dayHeaderContent","dayHeaderDidMount","dayHeaderWillUnmount","dayCellClassNames","dayCellContent","dayCellDidMount","dayCellWillUnmount","initialView","aspectRatio","weekends","weekNumbers","weekNumberClassNames","weekNumberContent","weekNumberDidMount","weekNumberWillUnmount","editable","viewClassNames","viewDidMount","viewWillUnmount","nowIndicator","nowIndicatorClassNames","nowIndicatorContent","nowIndicatorDidMount","nowIndicatorWillUnmount","showNonCurrentDates","lazyFetching","startParam","endParam","timeZoneParam","locales","themeSystem","dragRevertDuration","dragScroll","allDayMaintainDuration","unselectAuto","dropAccept","eventOrder","eventOrderStrict","handleWindowResize","windowResizeDelay","longPressDelay","eventDragMinDistance","expandRows","height","contentHeight","weekNumberFormat","eventResizableFromStart","displayEventTime","displayEventEnd","progressiveEventRendering","businessHours","initialDate","now","eventDataTransform","stickyHeaderDates","stickyFooterScrollbar","viewHeight","defaultAllDay","eventSourceFailure","eventSourceSuccess","eventDisplay","eventStartEditable","eventDurationEditable","eventOverlap","eventConstraint","eventAllow","eventBackgroundColor","eventBorderColor","eventTextColor","eventColor","eventClassNames","eventContent","eventDidMount","eventWillUnmount","selectConstraint","selectOverlap","selectAllow","droppable","unselectCancel","slotLabelFormat","slotLaneClassNames","slotLaneContent","slotLaneDidMount","slotLaneWillUnmount","slotLabelClassNames","slotLabelContent","slotLabelDidMount","slotLabelWillUnmount","dayMaxEvents","dayMaxEventRows","dayMinWidth","slotLabelInterval","allDayText","allDayClassNames","allDayContent","allDayDidMount","allDayWillUnmount","slotMinWidth","navLinks","eventTimeFormat","rerenderDelay","moreLinkText","moreLinkHint","selectMinDistance","selectable","selectLongPressDelay","eventLongPressDelay","selectMirror","eventMaxStack","eventMinHeight","eventMinWidth","eventShortHeight","slotEventOverlap","plugins","dayCount","dateAlignment","dateIncrement","hiddenDays","monthMode","fixedWeekCount","validRange","visibleRange","titleFormat","eventInteractive","noEventsText","viewHint","navLinkHint","closeHint","timeHint","eventHint","moreLinkClick","moreLinkClassNames","moreLinkContent","moreLinkDidMount","moreLinkWillUnmount","handleCustomRendering","customRenderingMetaMap","customRenderingReplacesEl","BASE_OPTION_DEFAULTS","center","CALENDAR_LISTENER_REFINERS","datesSet","eventsSet","eventAdd","eventChange","eventRemove","windowResize","eventClick","eventMouseEnter","eventMouseLeave","select","unselect","loading","_unmount","_beforeprint","_afterprint","_noEventDrop","_noEventResize","_resize","_scrollRequest","CALENDAR_OPTION_REFINERS","buttonText","buttonHints","views","initialEvents","eventSources","COMPLEX_OPTION_COMPARATORS","isMaybeObjectsEqual","VIEW_OPTION_REFINERS","buttonTextKey","dateProfileGeneratorClass","usesMinMaxTime","classNames","didMount","willUnmount","mergeRawOptions","optionSets","refineProps","refiners","refined","extra","raw","flushSync","runBeforeFlush","oldDebounceRendering","preact","callbackQ","execCallbackSync","FakeComponent","ContextType","origProvider","ScrollResponder","execFunc","emitter","handleScrollRequest","queuedRequest","drain","on","fireInitialScroll","detach","off","isDatesNew","time","ViewContextType","buildViewContext","viewSpec","viewApi","viewOptions","dateProfileGenerator","dateEnv","theme","pluginHooks","dispatch","getCurrentData","calendarApi","registerInteractiveComponent","unregisterInteractiveComponent","addResizeHandler","removeResizeHandler","createScrollResponder","nextProps","nextState","debug","console","log","propEquality","stateEquality","safeSetState","newState","addPropsEquality","addStateEquality","BaseComponent","create","setRef","ContentInjector","super","currentDomNodes","queuedDomNodes","handleEl","elRef","generator","renderProps","attrs","buildElAttrs","innerContent","hasCustomRenderingHandler","generatorName","customContent","html","domNodes","elTag","applyQueueudDomNodes","triggerCustomRendering","isActive","customRenderingMeta","containerEl","reportNewContainerEl","generatorMeta","newNode","extraClassNames","elAttrs","elClasses","elStyle","RenderId","ContentContainer","InnerContent","InnerContentInjector","generatedClassNames","generateClassNames","classNameGenerator","renderId","containerComponent","parentProps","ViewContainer","view","buildViewClassNames","parseRange","invertRanges","ranges","constraintRange","dateRange","invertedRanges","compareRanges","range0","range1","intersectRanges","newRange","rangesIntersect","rangeContainsMarker","range","constrainMarkerToRange","computeAlignedDayRange","timedRange","dayCnt","computeVisibleDayRange","startDay","endDay","endTimeMS","diffDates","date0","date1","largeUnit","reduceCurrentDate","currentDate","action","dateMarker","getInitialDate","initialDateInput","getNow","nowInput","DateProfileGenerator","nowDate","initHiddenDays","buildPrev","currentDateProfile","forceToValid","prevDate","currentRangeUnit","build","buildNext","nextDate","currentInfo","isRangeAllDay","renderRange","activeRange","isValid","buildValidRange","trimHiddenDays","buildCurrentRangeInfo","buildRenderRange","adjustActiveRange","currentRange","buildDateIncrement","validRangeInput","simpleInput","refineRange","durationUnit","buildRangeFromDuration","buildRangeFromDayCount","buildCustomVisibleRange","getFallbackDuration","computeRes","isHiddenDay","skipHiddenDays","runningCount","visibleRangeInput","customAlignment","rangeInput","isHiddenDayHash","inc","isExclusive","createEventInstance","defId","instanceId","parseRecurring","recurringTypes","parsed","allDay","allDayGuess","typeData","typeId","expandRecurring","eventStore","framingRange","defs","instances","instance","recurringDef","def","starts","expandRecurringRanges","eventDef","typeDef","markers","expand","EVENT_NON_DATE_REFINERS","groupId","title","url","interactive","EVENT_DATE_REFINERS","EVENT_REFINERS","extendedProps","parseEvent","eventSource","allowOpenRange","buildEventRefiners","refineEventDef","computeIsDefaultAllDay","recurringRes","parseEventDef","sourceId","singleRes","parseSingle","hasEnd","EVENT_UI_REFINERS","eventRefiners","publicId","ui","createEventUi","memberAdder","eventDefMemberAdders","freeze","startMeta","endMeta","startMarker","endMarker","startInput","parseEvents","rawEvents","createEmptyEventStore","rawEvent","tuple","eventTupleToStore","getRelevantEvents","newStore","filterEventStoreDefs","lookDef","isEventDefsGrouped","def0","def1","mergeEventStores","store0","store1","filterFunc","excludeSubEventStore","master","filteredDefs","filteredInstances","normalizeConstraint","parseClassNames","startEditable","durationEditable","constraint","overlap","allow","color","backgroundColor","borderColor","textColor","EMPTY_EVENT_UI","constraints","allows","combineEventUis","uis","combineTwoEventUis","item0","item1","EVENT_SOURCE_REFINERS","success","failure","parseEventSource","buildEventSourceRefiners","rawObj","metaRes","buildEventSourceMeta","_raw","isFetching","latestFetchId","fetchRange","sourceDefId","eventSourceRefiners","eventSourceDefs","parseMeta","reduceEventStore","dateProfile","receiveRawEvents","fetchId","addEvent","excludeEventsBySourceId","subset","transformRawEvents","calEachTransform","sourceEachTransform","transformEachRawEvent","refinedEvents","refinedEvent","expandRange","rezoneEventStoreDates","oldDateEnv","newDateEnv","Emitter","handlers","thisContext","setThisContext","setOptions","addToHash","removeFromHash","trigger","attachedHandlers","optionHandler","hasHandlers","DEF_DEFAULTS","startTime","endTime","daysOfWeek","parseBusinessHours","refineInputs","rawDefs","rawDef","triggerDateSelect","selection","pev","buildDateSpanApiWithContext","jsEvent","origEvent","triggerDateUnselect","dateSpan","transform","dateSpanTransforms","buildDateSpanApi","getDefaultEventEnd","applyMutationToEventStore","eventConfigBase","mutation","eventConfigs","compileEventUis","applyMutationToEventDef","applyMutationToEventInstance","eventConfig","standardProps","startDelta","endDelta","copy","applier","eventDefMutationAppliers","eventInstance","forceAllDay","clearEnd","datesDelta","EventSourceImpl","internalEventSource","remove","refetch","sourceIds","isRefetch","EventImpl","_context","_def","_instance","setProp","warn","mutate","setExtendedProp","setStart","instanceRange","granularity","maintainDuration","setEnd","endInput","setDates","moveStart","deltaInput","delta","moveEnd","moveDates","setAllDay","formatInput","relevantEvents","oldEvent","relatedEvents","buildEventApis","revert","asStore","eventApiToStore","source","startStr","endStr","toPlainObject","collapseColor","collapseExtendedProps","toJSON","eventApi","excludeInstance","eventApis","excludeInstanceId","sliceEventStore","eventUiBases","inverseBgByGroupId","inverseBgByDefId","defByGroupId","bgRanges","fgRanges","eventUis","origRange","normalRange","slicedRange","isStart","isEnd","invertedRange","bg","fg","setElSeg","seg","fcSeg","getElSeg","eventDefs","compileEventUi","sortEventSegs","segs","eventOrderSpecs","objs","buildSegCompareObj","_seg","eventRange","computeSegDraggable","transformers","isDraggableTransformers","transformer","computeSegStartResizable","computeSegEndResizable","buildSegTimeText","timeFormat","defaultDisplayEventTime","defaultDisplayEventEnd","startOverride","endOverride","wholeEventStart","wholeEventEnd","segStart","segEnd","isStartDay","isEndDay","getSegMeta","todayRange","segRange","isPast","isFuture","isToday","getEventClassNames","isMirror","isDraggable","isStartResizable","isEndResizable","isDragging","isResizing","isSelected","buildEventRangeKey","getSegAnchorAttrs","href","STANDARD_PROPS","parseDateSpan","defaultDuration","span","parseOpenDateSpan","buildRangeApi","buildRangeApiWithTimeZone","fabricateEventRange","unpromisify","normalizedSuccessCallback","normalizedFailureCallback","isResolved","wrappedSuccess","wrappedFailure","JsonRequestError","message","response","requestJson","params","toUpperCase","fetchOptions","URLSearchParams","body","headers","fetch","fetchRes","ok","json","parsedResponse","canVGrowWithinCell","getCanVGrowWithinCell","computeCanVGrowWithinCell","position","top","left","div","possible","CalendarRoot","forPrint","handleBeforePrint","handleAfterPrint","isHeightAuto","Interaction","isHitComboAllowed","destroy","parseInteractionSettings","useEventCenter","interactionSettingsStore","CalendarImpl","currentDataManager","batchRendering","updateSize","setOption","optionName","rawOptionValue","getOption","currentCalendarOptionsInput","getAvailableLocaleCodes","availableRawLocales","handlerName","currentCalendarOptionsRefiners","changeView","viewType","dateOrRange","zoomTo","spec","viewSpecs","getUnitViewSpec","toolbarConfig","viewTypes","viewsWithButtons","footer","singleUnit","prev","next","prevYear","nextYear","today","gotoDate","zonedDateInput","incrementDate","formatDate","dateOrObj","endDate","selectionInput","dateSelection","eventInput","sourceInput","currentData","triggerEventAdd","sourceApi","getEventSourceById","newEventApi","getEventById","getEvents","removeAllEvents","getEventSources","sourceHash","sourceApis","internalId","addEventSource","sources","removeAllEventSources","refetchEvents","scrollToTime","timeInput","intersectRects","rect1","rect2","right","bottom","getDateMeta","isDisabled","isOther","getDayClassNames","DAY_FORMAT","WEEK_FORMAT","buildNavLinkAttrs","isTabbable","dateStr","zonedDate","handleInteraction","customAction","_scrollbarWidths","getScrollbarWidths","computeScrollbarWidths","overflow","computeScrollbarWidthsForEl","x","clientHeight","offsetWidth","clientWidth","computeClippedClientRect","clippingParents","getClippingParents","rect","clippingParent","intersection","parents","computedStyle","window","getComputedStyle","overflowY","overflowX","PositionCache","originEl","els","isHorizontal","isVertical","originClientRect","buildElHorizontals","buildElVerticals","originClientLeft","lefts","rights","originClientTop","tops","bottoms","leftToIndex","leftPosition","topToIndex","topPosition","getWidth","leftIndex","getHeight","topIndex","DateComponent","uid","prepareHits","queryHit","positionLeft","positionTop","elWidth","elHeight","isValidSegDownEl","eventDrag","eventResize","isValidDateDownEl","SegHierarchy","strictOrder","allowReslicing","maxCoord","maxStackCnt","levelCoords","entriesByLevel","stackCnts","addSegs","inputs","hiddenEntries","insertEntry","entry","findInsertion","isInsertionValid","insertEntryAt","handleInvalidInsertion","levelCoord","thickness","stackCnt","touchingEntry","splitEntry","barrier","partCnt","splitHiddenEntries","entrySpan","barrierSpan","intersectSpans","lateral","insertAt","level","buildEntryKey","newEntry","levelCnt","candidateCoord","touchingLevel","touchingLateral","trackingLevel","trackingCoord","trackingEntry","trackingEntries","searchRes","binarySearch","getEntrySpanEnd","lateralIndex","trackingEntryBottom","destLevel","destLateral","toRects","rects","entries","span0","span1","searchVal","getItemVal","middleIndex","middleVal","computeFallbackHeaderFormat","datesRepDistinctDays","CLASS_NAME","renderInner$1","text","TableDateCell","dayMeta","navLinkAttrs","colCnt","extraRenderProps","role","colSpan","extraDataAttrs","InnerContainer","isSticky","WEEKDAY_FORMAT","TableDowCell","dateMeta","NowTimer","initialNowDate","initialNowQueriedMs","computeTiming","currentState","prevProps","unroundedNow","currentUnitStart","nextUnitStart","waitMs","buildDayRange","DayHeader","createDayHeaderFormatter","dates","renderIntro","explicitFormat","dateCnt","DaySeriesModel","indices","dayIndex","cnt","sliceRange","firstIndex","getDateDayIndex","lastIndex","clippedFirstIndex","clippedLastIndex","ceil","dayOffset","DayTableModel","daySeries","breakOnWeeks","daysPerRow","rowCnt","cells","buildCells","headerDates","buildHeaderDates","rows","row","col","buildCell","seriesSeg","nextIndex","firstCol","lastCol","Slicer","sliceBusinessHours","_sliceBusinessHours","sliceDateSelection","_sliceDateSpan","_sliceEventStore","sliceEventDrag","_sliceInteraction","sliceEventResize","forceDayIfListItem","sliceProps","extraArgs","eventSegs","dateSelectionSegs","businessHourSegs","fgEventSegs","bgEventSegs","eventSelection","sliceNowDate","computeActiveRange","rangeRes","sliceEventRanges","interaction","mutatedEvents","affectedInstances","affectedEvents","isEvent","eventRanges","sliceEventRange","isComponentAllDay","VISIBLE_HIDDEN_RE","Scroller","liquid","liquidIsAbsolute","isAbsolute","overcomeLeft","overcomeRight","overcomeBottom","marginLeft","marginRight","marginBottom","maxHeight","needsXScrolling","realClientWidth","getYScrollbarWidth","childEl","needsYScrolling","realClientHeight","getXScrollbarWidth","RefMap","masterCallback","currentMap","depths","callbackMap","handleValue","removed","added","refCallback","collect","getAll","computeShrinkWidth","chunkEls","shrinkCells","largestWidth","shrinkCell","getSectionHasLiquidHeight","sectionConfig","getAllowYScrolling","renderChunkContent","chunkConfig","isHeader","tableClassName","syncRowHeights","minWidth","tableMinWidth","tableColGroupNode","rowContent","isColPropsEqual","cols0","cols1","renderMicroColGroup","cols","shrinkWidth","colNodes","colProps","sanitizeShrinkWidth","hasShrinkWidth","getScrollGridClassNames","getSectionClassNames","wholeTableVGrow","renderScrollShim","getStickyHeaderDates","getStickyFooterScrollbar","SimpleScrollGrid","processCols","scrollerRefs","scrollerElRefs","_handleScrollerEl","forceYScrollbars","scrollerClientWidths","scrollerClientHeights","handleSizing","computeScrollerDims","sectionConfigs","sections","microColGroupNode","collapsibleWidth","currentConfig","configCnt","configI","headSectionNodes","bodySectionNodes","footSectionNodes","renderSection","isBuggy","roleAttrs","outerContent","renderChunkTd","chunk","isLiquid","sectionKey","rowSyncHeights","reportRowHeightChange","scrollerEl","section","getSectionByKey","scrollerElRef","scrollbarWidth","scroller","harnessEl","EventContainer","timeText","disableDragging","disableResizing","isDateSelecting","defaultGenerator","StandardEvent","defaultTimeFormat","renderInnerContent$1","eventContentArg","innerProps","DAY_NUM_FORMAT","DayCellContainer","refineRenderProps","showDayNumber","hasCustomDayCellContent","dayNumberText","BgEvent","renderInnerContent","renderFill","fillType","WeekNumberContainer","defaultFormat","renderInner","PADDING_FROM_VIEWPORT","Popover","titleId","handleRootEl","rootEl","handleDocumentMouseDown","handleCloseClick","handleDocumentKeyDown","onClose","extraAttrs","parentEl","alignmentEl","alignGridTop","alignmentRect","popoverDims","popoverTop","popoverLeft","origin","offsetParent","MorePopover","startDate","extraDateSpan","dayEl","layer","MoreLinkContainer","linkElRef","isPopoverOpen","popoverId","handleClick","computeRange","buildPublicSeg","allDayDate","allSegs","hiddenSegs","handlePopoverClose","moreCnt","hint","shortText","renderMoreLinkInner","alignmentElRef","popoverContent","updateParentEl","computeEarliestSegStart","computeLatestSegEnd","pickEarliestStart","seg0","seg1","pickLatestEnd","Store","currentValue","subscribe","CustomRenderingStore","handle","customRendering","updated","has","css_248z","globalLocales","MINIMAL_RAW_EN_LOCALE","code","RAW_EN_LOCALE","eventCnt","organizeRawLocales","explicitRawLocales","defaultCode","allRawLocales","rawLocaleMap","en","rawLocale","buildLocale","inputSingular","available","queryLocale","parseLocale","codeArg","queryRawLocale","simpleId","merged","NumberFormat","createPlugin","premiumReleaseDate","deps","reducers","isLoadingFuncs","contextInit","eventDragMutationMassagers","dateSelectionTransformers","datePointTransforms","viewPropsTransformers","isPropsValid","externalDefTransforms","viewContainerAppends","eventDropTransformers","componentInteractions","calendarInteractions","themeClasses","namedTimeZonedImpl","elementDraggingImpl","optionChangeHandlers","scrollGridImpl","listenerRefiners","optionRefiners","propSetHandlers","buildPluginHooks","pluginDefs","globalDefs","currentPluginIds","addDefs","pluginName","currentId","combineHooks","buildBuildPluginHooks","currentHooks","currentOverrideDefs","currentGlobalDefs","overrideDefs","hooks0","hooks1","compareOptionalDates","StandardTheme","compileViewDefs","defaultConfigs","overrideConfigs","ensureViewDef","viewDef","buildViewDef","defaultConfig","overrideConfig","queryProp","theComponent","superType","superDef","defaults","rawOptions","overrides","parseViewConfigs","parseViewConfig","createViewHookComponent","viewProps","buildViewSpecs","defaultInputs","optionOverrides","dynamicOptionOverrides","localeDefaults","viewDefs","buildViewSpec","durationInput","singleUnitOverrides","createDurationCached","denom","queryButtonText","optionsSubset","buttonTextMap","queryButtonTitle","buttonKey","optionDefaults","buttonTextOverride","buttonTextDefault","buttonTitleOverride","buttonHint","buttonTitleDefault","tableCellShaded","buttonGroup","button","buttonActive","close","durationInputMap","JSON","stringify","reduceViewType","reduceDynamicOptionOverrides","reduceDateProfile","dp","initEventSources","addSources","parseInitialSources","reduceEventSources","removeSource","fetchDirtySources","fetchSourcesByIds","excludeStaticSources","receiveResponse","reduceEventSourcesNewTimeZone","computeEventSourcesLoading","eventSourceHash","isSourceDirty","doesSourceNeedRange","prevSources","sourceIdHash","nextSources","fetchSource","sourceDef","errorHandled","rawSources","rawSource","ignoreRange","reduceDateSelection","currentSelection","reduceSelectedEvent","currentInstanceId","eventInstanceId","reduceEventDrag","currentDrag","newDrag","reduceEventResize","currentResize","newResize","parseToolbars","calendarOptionOverrides","parseToolbar","sectionStrHash","sectionWidgets","hasTitle","sectionName","sectionStr","sectionRes","parseSection","widgets","calendarCustomButtons","calendarButtonTextOverrides","calendarButtonText","calendarButtonHintOverrides","calendarButtonHints","sectionSubstrs","buttonGroupStr","buttonClick","buttonIcon","click","textFallback","prevOrNext","navUnit","ViewImpl","viewTitle","activeStart","activeEnd","currentStart","currentEnd","eventSourceDef$2","successCallback","arrayEventSourcePlugin","eventSourceDef$1","errorCallback","funcEventSourcePlugin","JSON_FEED_EVENT_SOURCE_REFINERS","extraParams","eventSourceDef","requestParams","buildRequestParams","jsonFeedEventSourcePlugin","customRequestParams","SIMPLE_RECURRING_REFINERS","startRecur","endRecur","recurring","recurringData","clippedFramingRange","expandRanges","simpleRecurringEventsPlugin","dowHash","dayMarker","instanceStarts","instanceStart","changeHandlerPlugin","handleEventSources","unfoundSources","newInputs","inputFound","unfoundSource","newInput","handleDateProfile","handleEventStore","globalPlugins","TaskRunner","runTaskOption","delayedRunner","task","completedTasks","runTask","buildTitle","buildTitleFormat","CalendarDataManager","computeOptionsData","_computeOptionsData","computeCurrentViewData","_computeCurrentViewData","buildDateEnv","buildDateEnv$1","buildTheme","buildDateProfileGenerator","buildViewApi","buildViewUiProps","buildEventUiBySource","buildEventUiBases","parseContextBusinessHours","actionRunner","_handleAction","updateData","currentCalendarOptionsRefined","currentViewOptionsInput","currentViewOptionsRefined","optionsData","currentViewType","currentViewData","calendarContext","initialState","renderableEventStore","selectionConfig","contextAndState","reducer","computeIsLoading","resetOptions","append","isEventsLoading","eventUiSingleBase","eventUiBySource","wasLoading","isLoading","onAction","oldData","changeHandlers","oldCalendarOptions","newCalendarOptions","onData","refinedOptions","availableLocaleData","processRawCalendarOptions","warnUnknownOptions","currentRaw","currentRefined","anyChanges","processRawViewOptions","explicitLocale","ThemeClass","DateProfileGeneratorClass","isLoadingFunc","viewName","ToolbarSection","widgetGroups","widgetGroup","renderWidgetGroup","isOnlyButtons","widget","isPressed","activeButton","isTodayEnabled","isPrevEnabled","isNextEnabled","buttonClasses","disabled","groupClassName","Toolbar","startContent","endContent","model","extraClassName","forceLtr","centerContent","availableWidth","updateAvailableWidth","handleResize","paddingBottom","labeledById","EventClicking","handleSegClick","segEl","hasUrlContainer","location","EventHovering","handleEventElRemove","currentSegEl","handleSegLeave","handleSegEnter","triggerEvent","removeHoverListeners","publicEvName","CalendarContent","buildViewPropTransformers","buildToolbarProps","headerRef","footerRef","interactionsStore","viewLabelId","settingsInput","DEFAULT_INTERACTIONS","interactionClasses","interactions","TheInteractionClass","listeners","listener","resizeRunner","viewAspectRatio","toolbarProps","viewVGrow","viewContext","renderView","buildAppendContent","CalendarInteractionClass","ViewComponent","todayInfo","prevInfo","nextInfo","theClasses","TheClass","Calendar","isRendering","isRendered","currentClassNames","customContentRenderId","handleAction","renderRunner","handleData","handleRenderRequest","setClassNames","setHeight","wasRendering","pauseRendering","resumeRendering","classList","OPTION_IS_COMPLEX","resources","shallowCopy","FullCalendar","defineComponent","customRenderingMap","getApi","getSecret","buildOptions","suppliedOptions","$slots","teleportNodes","values","h","Teleport","to","mounted","customRenderingStore","$el","needCustomRenderingResize","beforeUpdate","beforeUnmount","watch","buildWatchers","inst","watchers","deep","complexOptionName","TableView","headerElRef","renderSimpleLayout","headerRowContent","bodyContent","renderHScrollLayout","ScrollGrid","chunks","colGroups","splitSegsByRow","byRow","splitSegsByFirstCol","byCol","splitInteractionByRow","DEFAULT_TABLE_EVENT_TIME_FORMAT","hasListItemDisplay","TableBlockEvent","TableListItemEvent","TableCellMoreLink","compileSegs","invisibleSegs","singlePlacements","isForcedInvisible","visibility","placement","DEFAULT_WEEK_NUM_FORMAT","TableCell","rootElRef","dayNumberId","renderTopInner","innerElRef","showWeekNumber","forceDayTop","fgContentElRef","fgContent","moreMarginTop","bgContent","computeFgSegPlacement","eventInstanceHeights","maxContentHeight","hierarchy","DayGridSegHierarchy","hiddenConsumes","segInputs","unknownHeightSegs","eventHeight","segRects","singleColPlacements","multiColPlacements","leftoverMargins","placeRects","moreCnts","moreMarginTops","absoluteTop","resliceSeg","hiddenEntry","hiddenSpan","allRects","rectsByEachCol","groupRectsByEachCol","currentHeight","currentMarginTop","multiPlacements","isFirstCol","spanStart","spanEnd","forceHidden","excludeHidden","touchingEntryId","placeholderEntry","placeholderEntryId","TableRow","cellElRefs","frameElRefs","fgElRefs","segHarnessRefs","framePositions","isForced","updateSizing","businessHoursByCol","bgEventSegsByCol","highlightSegsByCol","getHighlightSegs","mirrorSegsByCol","getMirrorSegs","cell","normalFgNodes","renderFgSegs","mirrorFgNodes","buildMirrorPlacements","showDayNumbers","showWeekNumbers","renderFillSegs","prevState","currentProps","segPlacements","nodes","leftRightCss","isExternalSizingChange","frameEls","oldInstanceHeights","newInstanceHeights","queryEventInstanceHeights","limitByContentHeight","computeMaxContentHeight","segElMap","firstKey","fcContainerEl","getCellEls","elMap","mirrorSegs","colPlacements","topsByInstanceId","buildAbsoluteTopHash","placements","Table","splitBusinessHourSegs","splitBgEventSegs","splitFgEventSegs","splitDateSelectionSegs","splitEventDrag","splitEventResize","rowRefs","businessHourSegsByRow","bgEventSegsByRow","fgEventSegsByRow","dateSelectionSegsByRow","eventDragByRow","eventResizeByRow","limitViaBalanced","colGroupNode","renderRowIntro","isSegAllDay","rowPositions","rowObj","colPositions","getCellRange","getCellEl","DayTableSlicer","dayTableModel","DayTable","slicer","tableRef","headerAlignElRef","DayTableView","buildDayTableModel","headerContent","contentArg","TableDateProfileGenerator","endOfWeek","dayGrid","dayGridDay","dayGridWeek","dayGridMonth","emits","components","VFullCalendar","required","computed","dayGridPlugin","eventInfo","title_html","info","$emit","currentYear","monthIndex","fullCalendar","selectedMonth","__exports__","VSwitch","inheritAttrs","indeterminate","inset","flat","default","makeVInputProps","makeSelectionControlProps","focused","setup","slots","useProxiedModel","loaderClasses","useLoader","isFocused","focus","blur","useFocus","loaderColor","getUid","onChange","useRender","inputAttrs","controlAttrs","filterInputAttrs","inputProps","_1","filterInputProps","controlProps","_2","filterControlProps","control","_control$value","_control$value$input","_ref2","isReadonly","_ref3","textColorClasses","textColorStyles","slotProps","loader","_createElementVNode","_component_v_row","_component_v_autocomplete","projectId","items","label","variant","$event","teamId","employeeId","_fullName","createdById","_component_v_select","_hoisted_2","_component_v_switch","isFinished","mixins","AutocompleteMixin","projectCodeSearch","savedTeamMT","localStorage","getItem","savedCreatedBy","savedEmployee","mapGetters","projectsOptions","pattern","normalizedInput","normalize","projects","project","normalizedProjectCode","includes","setItem","FilterMixin","AProjectCalendar","AProjectFilter","mastertasks","filteredProjects","project_code","starts_at","deadline","is_finished","$events","async","urlQueryObject","employee_id","project_id","team_id","created_by","created_at","queryParameters","toString","$axios","get_auth","$toast","openMasterTaskModal","mastertaskId","mastertask","find","emit","editMode"],"sourceRoot":""}
\ No newline at end of file
diff --git a/app/dist/js/7133.bb841a39.js.map b/app/dist/js/7133.bb841a39.js.map
deleted file mode 100644
index 29d2fbe..0000000
--- a/app/dist/js/7133.bb841a39.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"js/7133.bb841a39.js","mappings":"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","sources":["webpack://jandl/./src/plugins/tm@dashboard/_mixins/Filter.mixin.ts","webpack://jandl/./src/plugins/tm@dashboard/tasks/_utils/timeline.utils.ts","webpack://jandl/./src/plugins/tm@dashboard/_components/z-timeline.vue","webpack://jandl/./src/plugins/tm@dashboard/_components/z-timeline.vue?b342"],"sourcesContent":["export default {\n\tdata() {\n\t\treturn {\n\t\t\theader: {\n\t\t\t\tinitialized: false,\n\t\t\t\tmarginTop: 0,\n\t\t\t\tcalendar_previousScrollPosition: 0,\n\t\t\t\tisVisible: true\n\t\t\t}\n\t\t}\n\t},\n\n\tunmounted() {\n\t\tthis.$refs.page?.querySelector('.vuecal__bg')?.removeEventListener('scroll', this.handleScroll)\n\t},\n\n\tmethods: {\n\t\t_initScrollListener(repeat = 0) {\n\t\t\tif (this.initialized) return\n\n\t\t\tconst calendar = this.$refs.page?.querySelector('.vuecal__bg')\n\n\t\t\tif (!calendar)\n\t\t\t\treturn setTimeout(() => {\n\t\t\t\t\tif (repeat < 20) this._initScrollListener(repeat + 1)\n\t\t\t\t}, 200)\n\n\t\t\tcalendar.addEventListener('scroll', this._handleScroll)\n\t\t\tthis.initialized = true\n\t\t\tthis.header.calendar_previousScrollPosition = calendar.scrollTop\n\t\t\t// if (calendar.scrollTop > 0 && this.header.isVisible) {\n\t\t\t// \tthis.hideHeader()\n\t\t\t// }\n\t\t},\n\n\t\t_handleScroll(e) {\n\t\t\tconst header = document.querySelector('div.subheader') as HTMLElement\n\n\t\t\t// Check if the header is initialized\n\t\t\tif (!this.initialized) {\n\t\t\t\tthis.header.calendar_previousScrollPosition = e.target.scrollTop\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tif (this.header.calendar_previousScrollPosition > e.target.scrollTop) {\n\t\t\t\t// On the way up\n\t\t\t\tif (!this.header.isVisible) {\n\t\t\t\t\tthis.showHeader()\n\t\t\t\t}\n\t\t\t} else if (header.offsetHeight > Math.abs(e.target.scrollTop)) {\n\t\t\t\t// On the way down\n\t\t\t\tif (this.header.isVisible) {\n\t\t\t\t\tthis.hideHeader()\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// On the way down below filter height\n\t\t\t\tif (this.header.isVisible) {\n\t\t\t\t\tthis.hideHeader()\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.header.calendar_previousScrollPosition = e.target.scrollTop\n\t\t},\n\n\t\thideHeader() {\n\t\t\tconst header = document.querySelector('div.subheader') as HTMLElement\n\n\t\t\theader.style.transition = 'margin-top 0.5s'\n\t\t\theader.style.marginTop = `-${header.offsetHeight}px`\n\t\t\tthis.header.isVisible = false\n\n\t\t\tsetTimeout(() => {\n\t\t\t\theader.style.transition = ''\n\t\t\t}, 500)\n\t\t},\n\n\t\tshowHeader() {\n\t\t\tconst header = document.querySelector('div.subheader') as HTMLElement\n\n\t\t\theader.style.transition = 'margin-top 0.5s'\n\t\t\theader.style.marginTop = '0'\n\t\t\tthis.header.isVisible = true\n\n\t\t\tsetTimeout(() => {\n\t\t\t\theader.style.transition = ''\n\t\t\t}, 500)\n\t\t},\n\t}\n}\n","import { setHours, setMinutes, addDays, differenceInCalendarDays } from 'date-fns'\nimport moment from 'moment'\n\nexport default {\n\tgenerateTimelineTasks(subtasks, date, employee) {\n\t\tconst { tasks, blockers, homeoffices } = this.generateTimelineEvents(subtasks, employee, date)\n\t\tconst { nonWorkingHours } = this.generateTimelineNonWorkingHours(date, employee)\n\n\t\treturn {\n\t\t\ttasks,\n\t\t\tblockers,\n\t\t\tnonWorkingHours,\n\t\t\thomeoffices\n\t\t}\n\t},\n\n\tgetUnscheduledTime(subtasks) {\n\t\tlet unscheduledTime = 0\n\t\tsubtasks.forEach(subtask => unscheduledTime += (subtask.duration - subtask.spent_time))\n\n\t\treturn unscheduledTime\n\t},\n\n\tisWeekend(date) {\n\t\treturn moment(date).day() % 6 == 0\n\t},\n\n\tgenerateTimelineEvents(subtasks, employee, date) {\n\t\tlet blockers = []\n\t\tconst tasks = []\n\n\t\tsubtasks.forEach(subtask => {\n\t\t\tif (['blocker', 'adhoc', 'home_office', 'vacation', 'free_day'].includes(subtask.type)) {\n\t\t\t\tblockers = [...blockers, ...this._generateEventsFromBlocker(subtask, date)]\n\t\t\t} else {\n\t\t\t\tsubtask.timeblocks?.forEach((timeblock) => {\n\t\t\t\t\ttasks.push(this._composeTimelineEvent(subtask, employee, date, timeblock))\n\t\t\t\t})\n\t\t\t}\n\t\t})\n\n\t\treturn {\n\t\t\ttasks,\n\t\t\tblockers: blockers.filter(blocker => blocker.type != 'home_office'),\n\t\t\thomeoffices: blockers.filter(blocker => blocker.type == 'home_office')\n\t\t}\n\t},\n\n\t_composeTimelineEvent(subtask, employee, date, timeblock) {\n\t\tconst diffInDays = differenceInCalendarDays(date, new Date(timeblock.start))\n\n\t\treturn {\n\t\t\tid: subtask.id,\n\t\t\tstart: addDays(new Date(timeblock.start), diffInDays),\n\t\t\tend: addDays(new Date(timeblock.end), diffInDays),\n\t\t\tmaster_task: subtask.master_task,\n\t\t\tdate: new Date(timeblock.start),\n\t\t\tisWeekend: this.isWeekend(timeblock.start),\n\t\t\tinitials: employee.name.charAt(0).toUpperCase() + employee.surname.charAt(0).toUpperCase(),\n\t\t\tsplit: this._getSplitFromDate(date, timeblock.start),\n\t\t\tproject_code: subtask.project_code,\n\t\t\tsubtask: subtask,\n\t\t\ttype: 'subtask',\n\t\t\t_timeblock_id: timeblock.id,\n\t\t\t_timeblock_is_finished: timeblock.is_finished,\n\t\t\t_real_start: new Date(timeblock.start),\n\t\t\t_real_end: new Date(timeblock.end)\n\t\t}\n\t},\n\n\t_generateEventsFromBlocker(blocker, date) {\n\t\tconst start = moment(blocker.start)\n\t\tconst end \t= moment(blocker.end)\n\n\t\tconst dates \t= start.isSame(end, 'date') ? [moment(start).format('YYYY-MM-DD')] : this._getDatesInRange(start, end)\n\t\tconst blockers \t= dates.map(d => {\n\t\t\tconst diffInDays = differenceInCalendarDays(date, new Date(d))\n\t\t\tconst dStart = new Date(moment(d).set({hours: start.hours(), minutes: start.minutes()}).format('YYYY-MM-DD HH:mm'))\n\t\t\tconst dEnd = new Date(moment(d).set({hours: end.hours(), minutes: end.minutes()}).format('YYYY-MM-DD HH:mm'))\n\n\t\t\treturn {\n\t\t\t\tblocker,\n\t\t\t\tsplit: this._getSplitFromDate(date, d),\n\t\t\t\tstart: addDays(dStart, diffInDays),\n\t\t\t\tend: addDays(dEnd, diffInDays),\n\t\t\t\tdate: new Date(d),\n\t\t\t\ttype: blocker.type,\n\t\t\t\tisBlocker: true,\n\t\t\t\tinitials: `${blocker.employee?.name[0]}${blocker.employee?.surname[0]}`,\n\t\t\t\tcolor: '#B00020',\n\t\t\t\tdraggable: false,\n\t\t\t\t_real_start: dStart,\n\t\t\t\t_real_end: dEnd\n\t\t\t}\n\t\t})\n\n\t\treturn blockers\n\t},\n\n\t_getDatesInRange(start, end) {\n\t\tconst dates = []\n\n\t\twhile (start <= end) {\n\t\t\tdates.push(moment(start).format('YYYY-MM-DD'))\n\t\t\tstart.add(1, 'day')\n\t\t}\n\n\t\treturn dates\n\t},\n\n\tgenerateTimelineNonWorkingHours(date, employee) {\n\t\tconst events = []\n\n\t\tconst { start: dayStart, end: dayEnd } = this._getDayStartEnd(date)\n\n\t\tfor (let i = 0; i < 7; i++) {\n\t\t\tevents.push({\n\t\t\t\ttitle: \"Non working hours\",\n\t\t\t\tstart: dayStart,\n\t\t\t\tend: this._setMinutesToDate(employee.work_start * 60, date),\n\t\t\t\ttype: 'non-working-hours',\n\t\t\t\tsplit: i + 1,\n\t\t\t\tdraggable: false\n\t\t\t})\n\n\t\t\tevents.push({\n\t\t\t\ttitle: \"Non working hours\",\n\t\t\t\tstart: this._setMinutesToDate(employee.work_end * 60, date),\n\t\t\t\tend: dayEnd,\n\t\t\t\ttype: 'non-working-hours',\n\t\t\t\tsplit: i + 1,\n\t\t\t\tdraggable: false\n\t\t\t})\n\t\t}\n\n\t\treturn {nonWorkingHours: events}\n\t},\n\n\t_getSplitFromDate(date, start) {\n\t\treturn differenceInCalendarDays(new Date(date), new Date(start)) * (-1) + 1\n\t},\n\n\t_getDifferenceInHours(date1, date2) {\n\t\treturn this._getDifferenceInMinutes(date1, date2) / 60\n\t},\n\n\t_getDifferenceInMinutes(date1, date2) {\n\t\tlet diff = (date1.getTime() - date2.getTime()) / 1000\n\t\tdiff /= 60\n\t\treturn Math.abs(Math.round(diff))\n\t},\n\n\t_getDayStartEnd(date) {\n\t\treturn {\n\t\t\tstart: this._setMinutesToDate(0, date),\n\t\t\tend: this._setMinutesToDate(1439, date)\n\t\t}\n\t},\n\n\t_setMinutesToDate(minutes, date) {\n\t\tconst newDate = new Date(date)\n\t\tnewDate.setHours(Math.floor(minutes / 60), minutes % 60, 0, 0)\n\t\treturn newDate\n\t}\n}","\n\t\n\t\t \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t\t \n\t\t\t\t\t\t{{ getHeadingDate(split.date) }} \n\t\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t\t \n\t\t\t\t\t\t{{ split.name }} \n\t\t\t\t\t\n\n\t\t\t\t\t \n\t\t\t\t\t\t{{ split.date.toLocaleDateString('en-EN', { weekday: 'long' }) }} \n\t\t\t\t\t\n\n\t\t\t\t\t \n\t\t\t\t\t\t \n\t\t\t\t\t\t\t {{ split.initials }} \n\t\t\t\t\t\t \n\t\t\t\t\t\t \n\t\t\t\t\t\t\t {{split.fullname}} \n\t\t\t\t\t\t\t {{split.unscheduledTime}} h\n\t\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t \n\t\t\t\n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t{{hours}}:{{String(minutes).padStart(2, '0')}} \n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t\t\n\t\t\t\t\t\t {{ event.title }}\n\t\t\t\t\t\n\t\t\t\t \n\n\t\t\t\t\n\t\t\t\t\t \n\t\t\t\t\t\t \n\t\t\t\t\t\t\t{{ event.subtask.project_code }}\n\t\t\t\t\t\t\t{{ event.subtask.title ?? event.subtask.master_task?.name ?? event.subtask.master_task }}\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t \n\t\t\t\t\t\t\t{{ event.blocker.name }}\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t \n\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t{{ event.initials }}\n\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t {{ event.date?.toLocaleDateString('sk-SK') }}\n\t\t\t\t\t\t \n\n\t\t\t\t\t\t \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t{{ getDeadline(event?.subtask) }}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{{ getDeadline(event?.subtask) }}*\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t \n\t\t\t\t\t \n\n\t\t\t\t\t\n\t\t\t\t \n\t\t\t\n\t\t\n\t \n\n\n\n\n\n","import { render } from \"./z-timeline.vue?vue&type=template&id=8b9aedf6&scoped=true\"\nimport script from \"./z-timeline.vue?vue&type=script&lang=js\"\nexport * from \"./z-timeline.vue?vue&type=script&lang=js\"\n\nimport \"./z-timeline.vue?vue&type=style&index=0&id=8b9aedf6&lang=sass&scoped=true\"\n\nimport exportComponent from \"/Users/romankravarik/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-8b9aedf6\"]])\n\nexport default __exports__"],"names":["data","header","initialized","marginTop","calendar_previousScrollPosition","isVisible","unmounted","this","$refs","page","querySelector","removeEventListener","handleScroll","methods","_initScrollListener","repeat","calendar","setTimeout","addEventListener","_handleScroll","scrollTop","e","document","target","showHeader","offsetHeight","Math","abs","hideHeader","style","transition","generateTimelineTasks","subtasks","date","employee","tasks","blockers","homeoffices","generateTimelineEvents","nonWorkingHours","generateTimelineNonWorkingHours","getUnscheduledTime","unscheduledTime","forEach","subtask","duration","spent_time","isWeekend","moment","day","includes","type","_generateEventsFromBlocker","timeblocks","timeblock","push","_composeTimelineEvent","filter","blocker","diffInDays","differenceInCalendarDays","Date","start","id","addDays","end","master_task","initials","name","charAt","toUpperCase","surname","split","_getSplitFromDate","project_code","_timeblock_id","_timeblock_is_finished","is_finished","_real_start","_real_end","dates","isSame","format","_getDatesInRange","map","d","dStart","set","hours","minutes","dEnd","isBlocker","color","draggable","add","events","dayStart","dayEnd","_getDayStartEnd","i","title","_setMinutesToDate","work_start","work_end","_getDifferenceInHours","date1","date2","_getDifferenceInMinutes","diff","getTime","round","newDate","setHours","floor","class","_createElementVNode","_createElementBlock","_hoisted_1","_createVNode","_component_Vue_cal","$props","onEventClick","$options","$data","editing","unscheduled_times","showTimeInCells","scrollHour","onReady","onViewChange","onEventDrop","onEventFocus","_hoisted_2","_hoisted_3","isHomeoffice","src","require","_hoisted_5","_hoisted_6","_hoisted_8","_hoisted_10","toLocaleDateString","weekday","_hoisted_11","_hoisted_12","_hoisted_13","fullname","_hoisted_14","_hoisted_15","String","padStart","_hoisted_16","event","_hoisted_17","_hoisted_18","_component_v_icon","icon","_hoisted_19","backgroundColor","_Fragment","key","_hoisted_20","_hoisted_22","_hoisted_23","_hoisted_24","_hoisted_25","size","deadline","_hoisted_26","_createBlock","_component_v_tooltip","text","location","activator","props","_mergeProps","_hoisted_27","_component_v_btn","rounded","onClick","alt","calData","Object","required","default","calConfig","splits","Array","vueCalConfig","drag","resize","delete","create","focusedEventId","timeCellHeight","tmUtils","computed","mapGetters","getDeadline","mastertasks","masterTask","find","mt","master_task_id","weekChanged","scrollContainer","$el","getElementsByClassName","scrollLeft","async","newSplit","startTimeMinutes","endTimeMinutes","$route","editedSubtask","timesheets","timesheet","employee_name","$axios","put_auth","$events","emit","employee_id","$store","getters","error","$toast","message","correctMargins","length","heightOfDayHeader","clientHeight","getHeadingDate","value","today","yesterday","setDate","getDate","tomorrow","getEventLength","taskClicked","eventFocused","task_id","completeTask","originalTimeblock","newTimeblock","editTask","deleteTask","editBlocker","deleteBlocker","__exports__","render"],"sourceRoot":""}
\ No newline at end of file
diff --git a/app/dist/js/723.5e5ebdc3.js b/app/dist/js/723.5e5ebdc3.js
deleted file mode 100644
index 92f31b1..0000000
--- a/app/dist/js/723.5e5ebdc3.js
+++ /dev/null
@@ -1,2 +0,0 @@
-"use strict";(self["webpackChunkjandl"]=self["webpackChunkjandl"]||[]).push([[723],{23764:function(e,t,s){s.r(t),s.d(t,{default:function(){return S}});var a=s(73396);const i={ref:"page"};function n(e,t,s,n,r,l){const o=(0,a.up)("A-team-filter"),d=(0,a.up)("Z-timeline");return(0,a.wg)(),(0,a.iD)("div",i,[e.$store.getters["tm/isInitialized"]?((0,a.wg)(),(0,a.j4)(o,{key:0,"split-days":e.calendarData?e.splitDays:null,onFilterChanged:l.onFilterChanged},null,8,["split-days","onFilterChanged"])):(0,a.kq)("",!0),e.calendarData&&!r.hideCal?((0,a.wg)(),(0,a.j4)(d,{key:1,"cal-data":e.calendarData,"cal-config":r.calendarConfig,splits:e.splitDays},null,8,["cal-data","cal-config","splits"])):(0,a.kq)("",!0)],512)}var r=s(60988),l=s(67312),o=s(16824),d=s(45869);const u={class:"d-flex date-wrapper"},h=["src"],c=["src"];function m(e,t,i,n,m,f){return(0,a.wg)(),(0,a.j4)(o.o,{class:"px-10 py-8 subheader"},{default:(0,a.w5)((()=>[(0,a.Wm)(r.f,{"custom-filter":e.customFilter,"match-any":!0,modelValue:m.selectedTeam,"onUpdate:modelValue":t[0]||(t[0]=e=>m.selectedTeam=e),class:"subheader-input",items:e.teams,"item-title":"name","item-value":"id",label:"Tím",variant:"outlined"},null,8,["custom-filter","modelValue","items"]),(0,a._)("div",u,[(0,a.Wm)(l.T,{class:"subheader-icon-button prev",variant:"outlined",onClick:t[1]||(t[1]=e=>f.prevDay())},{default:(0,a.w5)((()=>[(0,a._)("img",{src:s(38351),alt:""},null,8,h)])),_:1}),(0,a.Wm)(d.hw,{class:"subheader-input disabled",label:"Dátum",modelValue:m.selectedDate,"onUpdate:modelValue":t[2]||(t[2]=e=>m.selectedDate=e),variant:"outlined","append-inner-icon":"mdi-calendar-blank-outline"},null,8,["modelValue"]),(0,a.Wm)(l.T,{class:"subheader-icon-button next",variant:"outlined",onClick:t[3]||(t[3]=e=>f.nextDay())},{default:(0,a.w5)((()=>[(0,a._)("img",{src:s(35902),alt:""},null,8,c)])),_:1})]),(0,a.Wm)(d.hw,{class:"subheader-input disabled",label:"Nenaplánované hodiny",modelValue:m.time,"onUpdate:modelValue":t[4]||(t[4]=e=>m.time=e),variant:"outlined",disabled:!0},null,8,["modelValue"])])),_:1})}var f=s(11271),p=s(85174),_=s(83299),k=s(20065),g={mixins:[_.Z],emits:["filter-changed"],props:{splitDays:{type:[Array,null],default:()=>null}},data(){return{date:new Date,selectedTeam:null,selectedDate:null,time:null,filter:{start:null,end:null,team:null}}},computed:{...(0,k.Se)("auth",["user"]),...(0,k.Se)("tm",["teams"])},mounted(){this.selectedTeam=this.teams[1].id,this.$nextTick((()=>this._updateFilters()))},methods:{prevDay(){this.date=(0,f.Z)(this.date,1),this._updateFilters()},nextDay(){this.date=(0,p.Z)(this.date,1),this._updateFilters()},_updateFilters(){this.filter.start=this.date,this.filter.end=this.date,this.selectedDate=String(this.filter.start?.toLocaleDateString("sk-SK")),this._emitFilterChanged()},_emitFilterChanged(){this.filter.start&&this.filter.end&&this.filter.team&&this.$emit("filter-changed",this.filter)}},watch:{selectedTeam(e){this.filter.team=this.teams.find((t=>t.id==e)),this._emitFilterChanged()},splitDays(){this.time=this.splitDays.map((e=>parseFloat(e.unscheduledTime))).reduce(((e,t)=>e+t),0)}}},b=s(40089);const D=(0,b.Z)(g,[["render",m],["__scopeId","data-v-52340441"]]);var y=D,w=s(10353),C=s(36797),v=s.n(C),T=(s(57658),s(2750)),F={computed:{calendarData(){if(!this.subtasks||!this.blockers)return;const e=this._generateBlockers();return{tasks:[...this._generateNonWorking(),...this._generateTasks(),...e.filter((e=>"home_office"!=e.type))],homeoffices:[...e.filter((e=>"home_office"==e.type))]}},splitDays(){const e=[],t={};v()();return this.filter.team.employees.forEach(((s,a)=>{const i=v()(this.filter.start),n=this._getRemainingWorkCapacityMinutes(s);let r=0;this.calendarData.tasks.forEach((e=>{e.subtask?.employee_id!=s.id&&e.blocker?.employee?.id!=s.id||"non-working-hours"==e.type||e.subtask?.is_finished||e.blocker?.is_finished||i.isBefore(v()(),"days")||i.isSame(v()(),"days")||(r+=T.Z._getDifferenceInMinutes(e._real_end,e._real_start))})),this.calendarData.homeoffices.forEach((e=>{e.blocker.employee?.id==s.id&&(t[e.split]=!0)}));const l=n-r;e.push({id:a+1,name:s.name,employee_id:s.id,fullname:`${s.name} ${s.surname}`,initials:s.name.charAt(0).toUpperCase()+s.surname.charAt(0).toUpperCase(),unscheduledTime:l>0?(l/60).toFixed(1):0,isHomeoffice:!!t[a+1]})})),e}},methods:{_generateNonWorking(){const e=[],t=new Date(this.filter.start);let s=null;this.calendarConfig.date=t;const{start:a,end:i}=this._getDayStartEnd();return this.filter.team.employees.forEach(((t,n)=>{(!s||t.work_start{let a=null,i=null;this.filter.team.employees.forEach(((e,t)=>{e.id==s.employee_id&&(a=t+1,i=e)})),s.timeblocks.forEach((n=>{const r=v()(n.start).format("DD-MM-YYYY");r==t&&e.push({id:s.id,start:new Date(n.start),end:new Date(n.end),master_task:s.master_task,name:i?.name,surname:i?.surname,isWeekend:v()(n.start).day()%6==0,initials:i?.name?.charAt(0)?.toUpperCase()+i?.surname?.charAt(0)?.toUpperCase(),split:a,project_code:s.project_code,type:"subtask",subtask:s,_timeblock_id:n.id,_timeblock_is_finished:n.is_finished,_real_start:new Date(n.start),_real_end:new Date(n.end)})}))})),e},_generateBlockers(){const e=[];return this.blockers.forEach((t=>{let s=null,a=null;this.filter.team.employees.forEach(((e,i)=>{e.id==t.employee?.id&&(s=i+1,a=e)})),e.push({blocker:t,split:s,start:new Date(t.start),end:new Date(t.end),type:t.type,isBlocker:!0,initials:`${a?.name[0]}${a?.surname[0]}`,color:"#B00020",draggable:!1,isWeekend:v()(t.start).day()%6==0,_real_start:new Date(t.start),_real_end:new Date(t.end)})})),e},_getDayStartEnd(){return{start:this._setMinutesToDate(0),end:this._setMinutesToDate(1439)}},_setMinutesToDate(e,t=new Date(this.filter.start)){return t.setHours(Math.floor(e/60),e%60,0,0),t},_getRemainingWorkCapacityMinutes(e){const t=v()(this.filter.start),s=v()();if(s.isAfter(t,"days"))return 0;if(s.isBefore(t,"days"))return 60*(e.work_end-e.work_start);const a=60*e.work_start,i=60*e.work_end,n=s.diff(v()().startOf("day"),"minutes");return a>n?i-a:i{this.onFilterChanged(this.filter)})),this.$events.on("on-subtask-deleted",(()=>{this.onFilterChanged(this.filter)})),this.$events.on("on-blocker-edited",(()=>{this.onFilterChanged(this.filter)})),this.$events.on("on-blocker-deleted",(()=>{this.onFilterChanged(this.filter)}))},unmounted(){this.$events.off("on-subtask-edited"),this.$events.off("on-subtask-deleted"),this.$events.off("on-blocker-edited"),this.$events.off("on-blocker-deleted")},methods:{async onFilterChanged(e){this.filter=e;const t={};e.start&&(t.start=v()(e.start).format("YYYY-MM-DD")),e.end&&(t.end=v()(e.end).format("YYYY-MM-DD")),e.team&&(t.team_id=e.team.id);const s=new URLSearchParams(t).toString();try{const{subtasks:e,blockers:t}=await this.$axios.get_auth(`v1/subtasks?${s}`);this.subtasks=e,this.blockers=t,this.hideCal=!0,setTimeout((()=>{this.hideCal=!1}),0)}catch(a){this.$toast.error("Nepodarilo sa nacitat data!")}this._initScrollListener()}}};const Y=(0,b.Z)(M,[["render",n],["__scopeId","data-v-79b7207e"]]);var S=Y}}]);
-//# sourceMappingURL=723.5e5ebdc3.js.map
\ No newline at end of file
diff --git a/app/dist/js/723.5e5ebdc3.js.map b/app/dist/js/723.5e5ebdc3.js.map
deleted file mode 100644
index 6d91469..0000000
--- a/app/dist/js/723.5e5ebdc3.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"js/723.5e5ebdc3.js","mappings":"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","sources":["webpack://jandl/./src/plugins/tm@dashboard/teams/teams.vue","webpack://jandl/./src/plugins/tm@dashboard/teams/_components/a-team-filter.vue","webpack://jandl/./src/plugins/tm@dashboard/teams/_components/a-team-filter.vue?5918","webpack://jandl/./src/plugins/tm@dashboard/teams/_mixins/TeamsCalendar.mixin.ts","webpack://jandl/./src/plugins/tm@dashboard/teams/teams.vue?577a"],"sourcesContent":["\n\t\n\n\n\n\n","\n\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t \n\t\t\n\t\n\n\n\n\n","import { render } from \"./a-team-filter.vue?vue&type=template&id=52340441&scoped=true\"\nimport script from \"./a-team-filter.vue?vue&type=script&lang=js\"\nexport * from \"./a-team-filter.vue?vue&type=script&lang=js\"\n\nimport \"./a-team-filter.vue?vue&type=style&index=0&id=52340441&lang=sass&scoped=true\"\n\nimport exportComponent from \"/Users/romankravarik/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-52340441\"]])\n\nexport default __exports__","import { setHours, setMinutes } from 'date-fns'\nimport moment \t\t\t\t\tfrom 'moment'\nimport timelineUtils \t\t\tfrom '@/plugins/tm@dashboard/tasks/_utils/timeline.utils'\n\nexport default {\n\tcomputed: {\n\t\tcalendarData() {\n\t\t\tif (!this.subtasks || !this.blockers)\n\t\t\t\treturn\n\n\t\t\tconst blockers = this._generateBlockers()\n\n\t\t\treturn {\n\t\t\t\ttasks: [...this._generateNonWorking(), ...this._generateTasks(), ...blockers.filter(blocker => blocker.type != 'home_office')],\n\t\t\t\thomeoffices: [...blockers.filter(blocker => blocker.type == 'home_office')]\n\t\t\t}\n\t\t},\n\n\t\tsplitDays() {\n\t\t\tconst days = []\n\t\t\tconst homeoffice = {}\n\t\t\tconst now\t\t= moment()\n\n\t\t\tthis.filter.team.employees.forEach((employee, index) => {\n\t\t\t\tconst selectedDate \t\t\t\t= moment(this.filter.start)\n\t\t\t\tconst capacityMinutes \t\t\t= this._getRemainingWorkCapacityMinutes(employee)\n\t\t\t\tlet scheduledCapacityMinutes\t= 0\n\n\t\t\t\tthis.calendarData.tasks.forEach(task => {\n\t\t\t\t\t// console.log(task)\n\t\t\t\t\tif ((task.subtask?.employee_id != employee.id) && (task.blocker?.employee?.id != employee.id))\n\t\t\t\t\t\treturn\n\n\t\t\t\t\tif (task.type == 'non-working-hours' || task.subtask?.is_finished || task.blocker?.is_finished)\n\t\t\t\t\t\treturn\n\n\t\t\t\t\tif (selectedDate.isBefore(moment(), 'days')) {\n\t\t\t\t\t\t// Past\n\t\t\t\t\t\treturn\n\t\t\t\t\t} else if (selectedDate.isSame(moment(), 'days')) {\n\t\t\t\t\t\t// Today\n\n\t\t\t\t\t} else {\n\t\t\t\t\t\tscheduledCapacityMinutes += timelineUtils._getDifferenceInMinutes(task._real_end, task._real_start)\n\t\t\t\t\t}\n\t\t\t\t})\n\n\t\t\t\tthis.calendarData.homeoffices.forEach(task => {\n\t\t\t\t\tif (task.blocker.employee?.id != employee.id) return\n\n\t\t\t\t\thomeoffice[task.split] = true\n\t\t\t\t})\n\n\t\t\t\tconst unscheduledTime = capacityMinutes - scheduledCapacityMinutes\n\n\t\t\t\tdays.push({\n\t\t\t\t\tid: index + 1,\n\t\t\t\t\tname: employee.name,\n\t\t\t\t\temployee_id: employee.id,\n\t\t\t\t\t// date: this.filter.start,\n\t\t\t\t\tfullname: `${employee.name} ${employee.surname}`,\n\t\t\t\t\tinitials: employee.name.charAt(0).toUpperCase() + employee.surname.charAt(0).toUpperCase(),\n\t\t\t\t\tunscheduledTime: unscheduledTime > 0 ? (unscheduledTime / 60).toFixed(1) : 0,\n\t\t\t\t\tisHomeoffice: homeoffice[index + 1] ? true : false\n\t\t\t\t})\n\t\t\t})\n\n\t\t\treturn days\n\t\t},\n\t},\n\n\tmethods: {\n\t\t_generateNonWorking() {\n\t\t\tconst nonWorkingHours \t = []\n\t\t\tconst date \t\t\t\t = new Date(this.filter.start)\n\t\t\tlet earliestHour = null\n\t\t\tthis.calendarConfig.date = date\n\n\t\t\tconst { start: dayStart, end: dayEnd } = this._getDayStartEnd()\n\n\t\t\tthis.filter.team.employees.forEach((employee, index) => {\n\t\t\t\tif (!earliestHour || (employee.work_start) < earliestHour)\n\t\t\t\t\tearliestHour = employee.work_start\n\n\n\t\t\t\tnonWorkingHours.push({\n\t\t\t\t\ttitle: \"Non working hours\",\n\t\t\t\t\tstart: dayStart,\n\t\t\t\t\tend: this._setMinutesToDate((employee.work_start + 1.3) * 60),\n\t\t\t\t\tsplit: index + 1,\n\t\t\t\t\ttype: 'non-working-hours',\n\t\t\t\t\tdraggable: false\n\t\t\t\t})\n\n\t\t\t\tnonWorkingHours.push({\n\t\t\t\t\ttitle: \"Non working hours\",\n\t\t\t\t\tstart: this._setMinutesToDate((employee.work_end + 1.3) * 60),\n\t\t\t\t\tend: dayEnd,\n\t\t\t\t\tsplit: index + 1,\n\t\t\t\t\ttype: 'non-working-hours',\n\t\t\t\t\tdraggable: false\n\t\t\t\t})\n\t\t\t})\n\n\t\t\tthis.calendarConfig.scrollHour = (earliestHour) - 1\n\t\t\treturn nonWorkingHours\n\t\t},\n\n\t\t_generateTasks() {\n\t\t\tconst tasks = []\n\t\t\tconst calendarDate \t= moment(this.filter.start).format('DD-MM-YYYY')\n\n\t\t\tthis.subtasks.forEach(subtask => {\n\t\t\t\tlet split \t = null\n\t\t\t\tlet employee = null\n\n\t\t\t\tthis.filter.team.employees.forEach((e, index) => {\n\t\t\t\t\tif (e.id == subtask.employee_id) {\n\t\t\t\t\t\tsplit = index + 1\n\t\t\t\t\t\temployee = e\n\t\t\t\t\t}\n\t\t\t\t})\n\n\t\t\t\tsubtask.timeblocks.forEach(timeblock => {\n\t\t\t\t\tconst formattedDate = moment(timeblock.start).format('DD-MM-YYYY')\n\n\t\t\t\t\tif (formattedDate == calendarDate) {\n\t\t\t\t\t\ttasks.push({\n\t\t\t\t\t\t\tid: subtask.id,\n\t\t\t\t\t\t\tstart: new Date(timeblock.start),\n\t\t\t\t\t\t\tend: new Date(timeblock.end),\n\t\t\t\t\t\t\tmaster_task: subtask.master_task,\n\t\t\t\t\t\t\tname: employee?.name,\n\t\t\t\t\t\t\tsurname: employee?.surname,\n\t\t\t\t\t\t\t// date: new Date(timeblock.start),\n\t\t\t\t\t\t\tisWeekend: moment(timeblock.start).day() % 6 == 0,\n\t\t\t\t\t\t\tinitials: employee?.name?.charAt(0)?.toUpperCase() + employee?.surname?.charAt(0)?.toUpperCase(),\n\t\t\t\t\t\t\tsplit: split,\n\t\t\t\t\t\t\tproject_code: subtask.project_code,\n\t\t\t\t\t\t\ttype: 'subtask',\n\t\t\t\t\t\t\tsubtask,\n\t\t\t\t\t\t\t_timeblock_id: timeblock.id,\n\t\t\t\t\t\t\t_timeblock_is_finished: timeblock.is_finished,\n\t\t\t\t\t\t\t_real_start: new Date(timeblock.start),\n\t\t\t\t\t\t\t_real_end: new Date(timeblock.end)\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t})\n\n\t\t\treturn tasks\n\t\t},\n\n\t\t_generateBlockers() {\n\t\t\tconst blockers = []\n\n\t\t\tthis.blockers.forEach(blocker => {\n\t\t\t\tlet split \t = null\n\t\t\t\tlet employee = null\n\n\t\t\t\tthis.filter.team.employees.forEach((e, index) => {\n\t\t\t\t\tif (e.id == blocker.employee?.id) {\n\t\t\t\t\t\tsplit = index + 1\n\t\t\t\t\t\temployee = e\n\t\t\t\t\t}\n\t\t\t\t})\n\n\t\t\t\tblockers.push({\n\t\t\t\t\tblocker,\n\t\t\t\t\tsplit,\n\t\t\t\t\tstart: new Date(blocker.start),\n\t\t\t\t\tend: new Date(blocker.end),\n\t\t\t\t\ttype: blocker.type,\n\t\t\t\t\tisBlocker: true,\n\t\t\t\t\tinitials: `${employee?.name[0]}${employee?.surname[0]}`,\n\t\t\t\t\tcolor: '#B00020',\n\t\t\t\t\tdraggable: false,\n\t\t\t\t\tisWeekend: moment(blocker.start).day() % 6 == 0,\n\t\t\t\t\t_real_start: new Date(blocker.start),\n\t\t\t\t\t_real_end: new Date(blocker.end)\n\t\t\t\t})\n\t\t\t})\n\n\t\t\treturn blockers\n\t\t},\n\n\t\t_getDayStartEnd() {\n\t\t\treturn {\n\t\t\t\tstart: this._setMinutesToDate(0),\n\t\t\t\tend: this._setMinutesToDate(1439)\n\t\t\t}\n\t\t},\n\n\t\t_setMinutesToDate(minutes, date = new Date(this.filter.start)) {\n\t\t\tdate.setHours(Math.floor(minutes / 60), minutes % 60, 0, 0)\n\t\t\treturn date\n\t\t},\n\n\t\t_getRemainingWorkCapacityMinutes(employee) {\n\t\t\tconst date = moment(this.filter.start)\n\t\t\tconst now \t= moment()\n\n\t\t\tif (now.isAfter(date, 'days')) {\n\t\t\t\t// Past dates\n\t\t\t\treturn 0\n\t\t\t} else if (now.isBefore(date, 'days')) {\n\t\t\t\t// Future dates\n\t\t\t\treturn (employee.work_end - employee.work_start) * 60\n\t\t\t}\n\n\t\t\t// Today\n\t\t\tconst workStartMinutes \t\t\t\t= employee.work_start * 60\n\t\t\tconst workEndMinutes \t\t\t\t= employee.work_end * 60\n\t\t\tconst elapsedMinutesOfCurrenyDay = now.diff(moment().startOf('day'), 'minutes')\n\t\t\t\n\t\t\tif (workStartMinutes > elapsedMinutesOfCurrenyDay)\n\t\t\t\treturn workEndMinutes - workStartMinutes\n\t\t\telse if (workEndMinutes < elapsedMinutesOfCurrenyDay)\n\t\t\t\treturn 0\n\t\t\telse\n\t\t\t\treturn workEndMinutes - elapsedMinutesOfCurrenyDay\n\t\t}\n\t}\n}","import { render } from \"./teams.vue?vue&type=template&id=79b7207e&scoped=true\"\nimport script from \"./teams.vue?vue&type=script&lang=js\"\nexport * from \"./teams.vue?vue&type=script&lang=js\"\n\nimport \"./teams.vue?vue&type=style&index=0&id=79b7207e&lang=sass&scoped=true\"\n\nimport exportComponent from \"/Users/romankravarik/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-79b7207e\"]])\n\nexport default __exports__"],"names":["ref","_createElementBlock","_hoisted_1","_ctx","getters","_createBlock","_component_A_team_filter","onFilterChanged","$options","$data","_component_Z_timeline","splits","class","_component_v_row","_createVNode","_component_v_autocomplete","items","label","variant","_createElementVNode","_component_v_btn","onClick","src","require","alt","_component_v_text_field","disabled","mixins","AutocompleteMixin","emits","props","splitDays","type","Array","default","data","date","Date","selectedTeam","selectedDate","time","filter","start","end","team","computed","mapGetters","mounted","this","teams","id","$nextTick","_updateFilters","methods","prevDay","subDays","nextDay","addDays","String","toLocaleDateString","_emitFilterChanged","$emit","watch","find","map","day","parseFloat","unscheduledTime","reduce","acc","val","__exports__","calendarData","subtasks","blockers","_generateBlockers","tasks","_generateNonWorking","_generateTasks","blocker","homeoffices","days","homeoffice","moment","employees","forEach","employee","index","capacityMinutes","_getRemainingWorkCapacityMinutes","scheduledCapacityMinutes","task","subtask","employee_id","is_finished","isBefore","isSame","timelineUtils","_real_end","_real_start","split","push","name","fullname","surname","initials","charAt","toUpperCase","toFixed","isHomeoffice","nonWorkingHours","earliestHour","calendarConfig","dayStart","dayEnd","_getDayStartEnd","work_start","title","_setMinutesToDate","draggable","work_end","scrollHour","calendarDate","format","e","timeblocks","timeblock","formattedDate","master_task","isWeekend","project_code","_timeblock_id","_timeblock_is_finished","isBlocker","color","minutes","setHours","Math","floor","now","isAfter","workStartMinutes","workEndMinutes","elapsedMinutesOfCurrenyDay","diff","startOf","TeamsCalendar","FilterMixin","components","ATeamFilter","ZTimeline","hideCal","$events","on","unmounted","off","async","urlQueryObject","team_id","queryParameters","URLSearchParams","toString","$axios","get_auth","setTimeout","error","$toast","_initScrollListener","render"],"sourceRoot":""}
\ No newline at end of file
diff --git a/app/dist/js/7283.9b796e25.js b/app/dist/js/7283.9b796e25.js
deleted file mode 100644
index 87bf964..0000000
--- a/app/dist/js/7283.9b796e25.js
+++ /dev/null
@@ -1,2 +0,0 @@
-"use strict";(self["webpackChunkjandl"]=self["webpackChunkjandl"]||[]).push([[7283],{93212:function(e,t,s){s.r(t),s.d(t,{default:function(){return S}});var i=s(73396);const l={ref:"page"};function a(e,t,s,a,n,r){const o=(0,i.up)("A-task-filter"),d=(0,i.up)("Z-timeline");return(0,i.wg)(),(0,i.iD)("div",l,[e.$store.getters["tm/isInitialized"]?((0,i.wg)(),(0,i.j4)(o,{key:0,"split-days":r.timelineData?r.splitDays:null,onFilterChanged:r.onFilterChanged,ref:"filter"},null,8,["split-days","onFilterChanged"])):(0,i.kq)("",!0),r.timelineData?((0,i.wg)(),(0,i.j4)(d,{key:1,calData:r.timelineData,calConfig:n.config,splits:r.splitDays},null,8,["calData","calConfig","splits"])):(0,i.kq)("",!0)],512)}s(57658);var n=s(60988),r=s(67312),o=s(16824),d=s(45869);const u={class:"d-flex date-wrapper"},h=["src"],m=["src"];function c(e,t,l,a,c,f){return(0,i.wg)(),(0,i.j4)(o.o,{class:"px-7 py-5 subheader"},{default:(0,i.w5)((()=>[(0,i.Wm)(n.f,{"custom-filter":e.customFilter,"match-any":!0,modelValue:c.selectedEmployee,"onUpdate:modelValue":t[0]||(t[0]=e=>c.selectedEmployee=e),class:"subheader-input",items:e.enrichedEmployees,"menu-props":{maxHeight:500},"item-title":"_fullName","item-value":"id",label:"Zamestnanec",variant:"outlined"},null,8,["custom-filter","modelValue","items"]),(0,i._)("div",u,[(0,i.Wm)(r.T,{class:"subheader-icon-button prev",variant:"outlined",onClick:t[1]||(t[1]=e=>f.prevWeek())},{default:(0,i.w5)((()=>[(0,i._)("img",{src:s(38351),alt:""},null,8,h)])),_:1}),(0,i.Wm)(d.hw,{class:"subheader-input disabled",label:"Dátum",modelValue:c.selectedDate,"onUpdate:modelValue":t[2]||(t[2]=e=>c.selectedDate=e),variant:"outlined","append-inner-icon":"mdi-calendar-blank-outline"},null,8,["modelValue"]),(0,i.Wm)(r.T,{class:"subheader-icon-button next",variant:"outlined",onClick:t[3]||(t[3]=e=>f.nextWeek())},{default:(0,i.w5)((()=>[(0,i._)("img",{src:s(35902),alt:""},null,8,m)])),_:1})]),(0,i.Wm)(d.hw,{class:"subheader-input disabled",label:"Nenaplánované hodiny",variant:"outlined",disabled:!0,modelValue:c.time,"onUpdate:modelValue":t[4]||(t[4]=e=>c.time=e)},null,8,["modelValue"])])),_:1})}var f=s(83299),p=s(20065),k=s(11271),y=s(85174),_={mixins:[f.Z],emits:["filter-changed"],props:{splitDays:{type:[Array,null],default:()=>null}},data(){return{date:new Date,selectedEmployee:null,selectedDate:null,time:null,filter:{start:null,end:null,employee:null}}},computed:{...(0,p.Se)("auth",["user"]),...(0,p.Se)("tm",["enrichedEmployees"])},mounted(){this.selectedEmployee=this.user.id,this.$nextTick((()=>this._updateFilters()))},methods:{prevWeek(){this.date=(0,k.Z)(this.date,7),this._updateFilters()},nextWeek(){this.date=(0,y.Z)(this.date,7),this._updateFilters()},_updateFilters(){this.filter.start=(0,k.Z)(this.date,1),this.filter.end=(0,y.Z)(this.date,5),this.selectedDate=String(this.filter.start?.toLocaleDateString("sk-SK")+" - "+this.filter.end?.toLocaleDateString("sk-SK")),this._emitFilterChanged()},_emitFilterChanged(){this.filter.start&&this.filter.end&&this.filter.employee&&this.$emit("filter-changed",this.filter)}},watch:{selectedEmployee(e){this.filter.employee=this.enrichedEmployees.find((t=>t.id==e)),this._emitFilterChanged()},splitDays(){this.time=this.splitDays.map((e=>parseFloat(e.unscheduledTime))).reduce(((e,t)=>e+t),0)}}},g=s(40089);const b=(0,g.Z)(_,[["render",c],["__scopeId","data-v-0f275556"]]);var D=b,v=s(10353),w=s(36797),Z=s.n(w),C=s(2750),F=s(70026),$={mixins:[F.Z],components:{ATaskFilter:D,ZTimeline:v.Z},data(){return{filter:null,subtasks:null,config:{date:(0,k.Z)(new Date,1),scrollHour:7}}},computed:{...(0,p.Se)("auth",["user"]),splitDays(){const e=[],t={},s={},i=Z()(),l=60*(this.user.work_end-this.user.work_start);this.timelineData.tasks.forEach((e=>{"non-working-hours"==e.type||e.subtask?.is_finished||e.blocker?.is_finished||(s[e.split]||(s[e.split]=0),i.isAfter(Z()(e._real_end))||(i.isAfter(Z()(e._real_start))&&i.isBefore(Z()(e._real_end))?s[e.split]+=C.Z._getDifferenceInMinutes(e._real_end,new Date):s[e.split]+=C.Z._getDifferenceInMinutes(e._real_end,e._real_start)))})),s[1]=0,this.timelineData.homeoffices.forEach((e=>{t[e.split-1]=!0}));for(let a=0;a<7;a++){let n;s[a+1]||(s[a+1]=0);const r=Z()((0,y.Z)(this.filter.start,a));if(r.isBefore(Z()(),"days"))n=0;else if(r.isSame(Z()(),"days")){const e=i.diff(i.clone().startOf("day"),"minutes"),t=60*this.user.work_start>e?this.user.work_start:e/60,l=60*(this.user.work_end-t);n=l-s[a+1]/60<0?0:l-s[a+1]}else n=l-s[a+1];isNaN(n)&&(n=l),e.push({id:a+1,fullname:`${this.filter.employee.name} ${this.filter.employee.surname}`,initials:this.filter.employee.name.charAt(0).toUpperCase()+this.filter.employee.surname.charAt(0).toUpperCase(),unscheduledTime:(n/60).toFixed(1),date:(0,y.Z)(this.filter.start,a),isHomeoffice:t[a],isWeekend:C.Z.isWeekend((0,y.Z)(this.filter.start,a))})}return e},unscheduledTime(){return this.subtasks?C.Z.getUnscheduledTime(this.subtasks):0},timelineData(){if(!this.subtasks||!this.filter)return null;const{tasks:e,blockers:t,nonWorkingHours:s,homeoffices:i}=C.Z.generateTimelineTasks(this.subtasks,new Date(this.filter.start),this.filter.employee);return{name:this.filter.employee.name,surname:this.filter.employee.surname,unscheduledTime:this.unscheduledTime,tasks:[...e,...t,...s],homeoffices:i}}},mounted(){this.$events.on("on-subtask-edited",(()=>{this.onFilterChanged(this.filter)})),this.$events.on("on-subtask-deleted",(()=>{this.onFilterChanged(this.filter)})),this.$events.on("on-blocker-edited",(()=>{this.onFilterChanged(this.filter)})),this.$events.on("on-blocker-deleted",(()=>{this.onFilterChanged(this.filter)}))},unmounted(){this.$events.off("on-subtask-edited"),this.$events.off("on-subtask-deleted"),this.$events.off("on-blocker-edited"),this.$events.off("on-blocker-deleted")},methods:{async onFilterChanged(e){this.filter=e;const t={};e.start&&(t.start=Z()(e.start).format("YYYY-MM-DD")),e.end&&(t.end=Z()(e.end).format("YYYY-MM-DD")),e.employee&&(t.employee_id=e.employee.id);const s=new URLSearchParams(t).toString();try{const{subtasks:e,blockers:t}=await this.$axios.get_auth(`v1/subtasks?${s}`);this.config.scrollHour=this.filter?.employee.work_start-1,this.config.date=this.filter.start,this.subtasks=[...e,...t]}catch(i){this.$toast.error("Nepodarilo sa nacitat data!")}this._initScrollListener()}}};const T=(0,g.Z)($,[["render",a],["__scopeId","data-v-48d26fee"]]);var S=T}}]);
-//# sourceMappingURL=7283.9b796e25.js.map
\ No newline at end of file
diff --git a/app/dist/js/7283.9b796e25.js.map b/app/dist/js/7283.9b796e25.js.map
deleted file mode 100644
index 9e7d9b9..0000000
--- a/app/dist/js/7283.9b796e25.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"js/7283.9b796e25.js","mappings":"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","sources":["webpack://jandl/./src/plugins/tm@dashboard/tasks/tasks.vue","webpack://jandl/./src/plugins/tm@dashboard/tasks/_components/a-tasks-filter.vue","webpack://jandl/./src/plugins/tm@dashboard/tasks/_components/a-tasks-filter.vue?1c78","webpack://jandl/./src/plugins/tm@dashboard/tasks/tasks.vue?f083"],"sourcesContent":["\n\t\n\n\n\n\n","\n\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t \n\t\t\n\t\n\n\n\n\n\n\n\n","import { render } from \"./a-tasks-filter.vue?vue&type=template&id=0f275556&scoped=true\"\nimport script from \"./a-tasks-filter.vue?vue&type=script&lang=js\"\nexport * from \"./a-tasks-filter.vue?vue&type=script&lang=js\"\n\nimport \"./a-tasks-filter.vue?vue&type=style&index=0&id=0f275556&lang=sass&scoped=true\"\n\nimport exportComponent from \"/Users/romankravarik/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-0f275556\"]])\n\nexport default __exports__","import { render } from \"./tasks.vue?vue&type=template&id=48d26fee&scoped=true\"\nimport script from \"./tasks.vue?vue&type=script&lang=js\"\nexport * from \"./tasks.vue?vue&type=script&lang=js\"\n\nimport \"./tasks.vue?vue&type=style&index=0&id=48d26fee&lang=sass&scoped=true\"\n\nimport exportComponent from \"/Users/romankravarik/gitrepo/jandl-taskmanager-app/app/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-48d26fee\"]])\n\nexport default __exports__"],"names":["ref","_createElementBlock","_hoisted_1","_ctx","getters","_createBlock","_component_A_task_filter","$options","onFilterChanged","_component_Z_timeline","calData","calConfig","$data","splits","class","_component_v_row","_createVNode","_component_v_autocomplete","items","maxHeight","label","variant","_createElementVNode","_component_v_btn","onClick","src","require","alt","_component_v_text_field","disabled","mixins","AutocompleteMixin","emits","props","splitDays","type","Array","default","data","date","Date","selectedEmployee","selectedDate","time","filter","start","end","employee","computed","mapGetters","mounted","this","user","id","$nextTick","_updateFilters","methods","prevWeek","subDays","nextWeek","addDays","String","toLocaleDateString","_emitFilterChanged","$emit","watch","enrichedEmployees","find","map","day","parseFloat","unscheduledTime","reduce","acc","val","__exports__","FilterMixin","components","ATaskFilter","ZTimeline","subtasks","config","scrollHour","days","homeoffice","schedulesCapacityBySplit","now","moment","dailyCapacityMinutes","work_end","work_start","timelineData","tasks","forEach","task","subtask","is_finished","blocker","split","isAfter","_real_end","_real_start","isBefore","timelineUtils","homeoffices","i","isSame","elapsedMinutes","diff","clone","startOf","workStart","todayCapacityMinutes","isNaN","push","fullname","name","surname","initials","charAt","toUpperCase","toFixed","isHomeoffice","isWeekend","blockers","nonWorkingHours","$events","on","unmounted","off","async","urlQueryObject","format","employee_id","queryParameters","URLSearchParams","toString","$axios","get_auth","error","$toast","_initScrollListener","render"],"sourceRoot":""}
\ No newline at end of file
diff --git a/app/dist/js/7458.f602cf50.js.map b/app/dist/js/7458.f602cf50.js.map
deleted file mode 100644
index b5f56e9..0000000
--- a/app/dist/js/7458.f602cf50.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"js/7458.f602cf50.js","mappings":"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","sources":["webpack://jandl/./src/plugins/tm@dashboard/_mixins/Filter.mixin.ts","webpack://jandl/./src/plugins/tm@dashboard/projects/projects.vue","webpack://jandl/./src/plugins/tm@dashboard/projects/_components/a-project-calendar.vue","webpack://jandl/../src/util.js","webpack://jandl/../src/options.js","webpack://jandl/../src/create-element.js","webpack://jandl/../src/component.js","webpack://jandl/../src/create-context.js","webpack://jandl/../src/constants.js","webpack://jandl/../src/diff/children.js","webpack://jandl/../src/diff/props.js","webpack://jandl/../src/diff/index.js","webpack://jandl/../src/render.js","webpack://jandl/../src/diff/catch-error.js","webpack://jandl/../src/index.js","webpack://jandl/../src/PureComponent.js","webpack://jandl/../src/forwardRef.js","webpack://jandl/../src/Children.js","webpack://jandl/../src/suspense.js","webpack://jandl/../src/suspense-list.js","webpack://jandl/../src/portals.js","webpack://jandl/./node_modules/@fullcalendar/core/internal-common.js","webpack://jandl/./node_modules/@fullcalendar/core/index.js","webpack://jandl/../src/options.ts","webpack://jandl/../src/utils.ts","webpack://jandl/../src/FullCalendar.ts","webpack://jandl/../src/index.ts","webpack://jandl/./node_modules/@fullcalendar/daygrid/internal.js","webpack://jandl/./node_modules/@fullcalendar/daygrid/index.js","webpack://jandl/./src/plugins/tm@dashboard/projects/_components/a-project-calendar.vue?f4c6","webpack://jandl/../../../src/components/VSwitch/VSwitch.tsx","webpack://jandl/./src/plugins/tm@dashboard/projects/_components/a-project-filter.vue","webpack://jandl/./src/plugins/tm@dashboard/projects/_components/a-project-filter.vue?a928","webpack://jandl/./src/plugins/tm@dashboard/projects/projects.vue?185c"],"sourcesContent":["export default {\n\tdata() {\n\t\treturn {\n\t\t\theader: {\n\t\t\t\tinitialized: false,\n\t\t\t\tmarginTop: 0,\n\t\t\t\tcalendar_previousScrollPosition: 0,\n\t\t\t\tisVisible: true\n\t\t\t}\n\t\t}\n\t},\n\n\tunmounted() {\n\t\tthis.$refs.page?.querySelector('.vuecal__bg')?.removeEventListener('scroll', this.handleScroll)\n\t},\n\n\tmethods: {\n\t\t_initScrollListener(repeat = 0) {\n\t\t\tif (this.initialized) return\n\n\t\t\tconst calendar = this.$refs.page?.querySelector('.vuecal__bg')\n\n\t\t\tif (!calendar)\n\t\t\t\treturn setTimeout(() => {\n\t\t\t\t\tif (repeat < 20) this._initScrollListener(repeat + 1)\n\t\t\t\t}, 200)\n\n\t\t\tcalendar.addEventListener('scroll', this._handleScroll)\n\t\t\tthis.initialized = true\n\t\t\tthis.header.calendar_previousScrollPosition = calendar.scrollTop\n\t\t\t// if (calendar.scrollTop > 0 && this.header.isVisible) {\n\t\t\t// \tthis.hideHeader()\n\t\t\t// }\n\t\t},\n\n\t\t_handleScroll(e) {\n\t\t\tconst header = document.querySelector('div.subheader') as HTMLElement\n\n\t\t\t// Check if the header is initialized\n\t\t\tif (!this.initialized) {\n\t\t\t\tthis.header.calendar_previousScrollPosition = e.target.scrollTop\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tif (this.header.calendar_previousScrollPosition > e.target.scrollTop) {\n\t\t\t\t// On the way up\n\t\t\t\tif (!this.header.isVisible) {\n\t\t\t\t\tthis.showHeader()\n\t\t\t\t}\n\t\t\t} else if (header.offsetHeight > Math.abs(e.target.scrollTop)) {\n\t\t\t\t// On the way down\n\t\t\t\tif (this.header.isVisible) {\n\t\t\t\t\tthis.hideHeader()\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// On the way down below filter height\n\t\t\t\tif (this.header.isVisible) {\n\t\t\t\t\tthis.hideHeader()\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.header.calendar_previousScrollPosition = e.target.scrollTop\n\t\t},\n\n\t\thideHeader() {\n\t\t\tconst header = document.querySelector('div.subheader') as HTMLElement\n\n\t\t\theader.style.transition = 'margin-top 0.5s'\n\t\t\theader.style.marginTop = `-${header.offsetHeight}px`\n\t\t\tthis.header.isVisible = false\n\n\t\t\tsetTimeout(() => {\n\t\t\t\theader.style.transition = ''\n\t\t\t}, 500)\n\t\t},\n\n\t\tshowHeader() {\n\t\t\tconst header = document.querySelector('div.subheader') as HTMLElement\n\n\t\t\theader.style.transition = 'margin-top 0.5s'\n\t\t\theader.style.marginTop = '0'\n\t\t\tthis.header.isVisible = true\n\n\t\t\tsetTimeout(() => {\n\t\t\t\theader.style.transition = ''\n\t\t\t}, 500)\n\t\t},\n\t}\n}\n","\n\t\n\t\t \n\t\t\n\t\t \n\t\t\t\n\t\t\n\t \n\n\n\n\n","\n\t\n\t\t\n\t \n\n\n\n","import { EMPTY_ARR } from \"./constants\";\n\n/**\n * Assign properties from `props` to `obj`\n * @template O, P The obj and props types\n * @param {O} obj The object to copy properties to\n * @param {P} props The object to copy properties from\n * @returns {O & P}\n */\nexport function assign(obj, props) {\n\t// @ts-ignore We change the type of `obj` to be `O & P`\n\tfor (let i in props) obj[i] = props[i];\n\treturn /** @type {O & P} */ (obj);\n}\n\n/**\n * Remove a child node from its parent if attached. This is a workaround for\n * IE11 which doesn't support `Element.prototype.remove()`. Using this function\n * is smaller than including a dedicated polyfill.\n * @param {Node} node The node to remove\n */\nexport function removeNode(node) {\n\tlet parentNode = node.parentNode;\n\tif (parentNode) parentNode.removeChild(node);\n}\n\nexport const slice = EMPTY_ARR.slice;\n","import { _catchError } from './diff/catch-error';\n\n/**\n * The `option` object can potentially contain callback functions\n * that are called during various stages of our renderer. This is the\n * foundation on which all our addons like `preact/debug`, `preact/compat`,\n * and `preact/hooks` are based on. See the `Options` type in `internal.d.ts`\n * for a full list of available option hooks (most editors/IDEs allow you to\n * ctrl+click or cmd+click on mac the type definition below).\n * @type {import('./internal').Options}\n */\nconst options = {\n\t_catchError\n};\n\nexport default options;\n","import { slice } from './util';\nimport options from './options';\n\nlet vnodeId = 0;\n\n/**\n * Create an virtual node (used for JSX)\n * @param {import('./internal').VNode[\"type\"]} type The node name or Component\n * constructor for this virtual node\n * @param {object | null | undefined} [props] The properties of the virtual node\n * @param {Array} [children] The children of the virtual node\n * @returns {import('./internal').VNode}\n */\nexport function createElement(type, props, children) {\n\tlet normalizedProps = {},\n\t\tkey,\n\t\tref,\n\t\ti;\n\tfor (i in props) {\n\t\tif (i == 'key') key = props[i];\n\t\telse if (i == 'ref') ref = props[i];\n\t\telse normalizedProps[i] = props[i];\n\t}\n\n\tif (arguments.length > 2) {\n\t\tnormalizedProps.children =\n\t\t\targuments.length > 3 ? slice.call(arguments, 2) : children;\n\t}\n\n\t// If a Component VNode, check for and apply defaultProps\n\t// Note: type may be undefined in development, must never error here.\n\tif (typeof type == 'function' && type.defaultProps != null) {\n\t\tfor (i in type.defaultProps) {\n\t\t\tif (normalizedProps[i] === undefined) {\n\t\t\t\tnormalizedProps[i] = type.defaultProps[i];\n\t\t\t}\n\t\t}\n\t}\n\n\treturn createVNode(type, normalizedProps, key, ref, null);\n}\n\n/**\n * Create a VNode (used internally by Preact)\n * @param {import('./internal').VNode[\"type\"]} type The node name or Component\n * Constructor for this virtual node\n * @param {object | string | number | null} props The properties of this virtual node.\n * If this virtual node represents a text node, this is the text of the node (string or number).\n * @param {string | number | null} key The key for this virtual node, used when\n * diffing it against its children\n * @param {import('./internal').VNode[\"ref\"]} ref The ref property that will\n * receive a reference to its created child\n * @returns {import('./internal').VNode}\n */\nexport function createVNode(type, props, key, ref, original) {\n\t// V8 seems to be better at detecting type shapes if the object is allocated from the same call site\n\t// Do not inline into createElement and coerceToVNode!\n\tconst vnode = {\n\t\ttype,\n\t\tprops,\n\t\tkey,\n\t\tref,\n\t\t_children: null,\n\t\t_parent: null,\n\t\t_depth: 0,\n\t\t_dom: null,\n\t\t// _nextDom must be initialized to undefined b/c it will eventually\n\t\t// be set to dom.nextSibling which can return `null` and it is important\n\t\t// to be able to distinguish between an uninitialized _nextDom and\n\t\t// a _nextDom that has been set to `null`\n\t\t_nextDom: undefined,\n\t\t_component: null,\n\t\t_hydrating: null,\n\t\tconstructor: undefined,\n\t\t_original: original == null ? ++vnodeId : original\n\t};\n\n\t// Only invoke the vnode hook if this was *not* a direct copy:\n\tif (original == null && options.vnode != null) options.vnode(vnode);\n\n\treturn vnode;\n}\n\nexport function createRef() {\n\treturn { current: null };\n}\n\nexport function Fragment(props) {\n\treturn props.children;\n}\n\n/**\n * Check if a the argument is a valid Preact VNode.\n * @param {*} vnode\n * @returns {vnode is import('./internal').VNode}\n */\nexport const isValidElement = vnode =>\n\tvnode != null && vnode.constructor === undefined;\n","import { assign } from './util';\nimport { diff, commitRoot } from './diff/index';\nimport options from './options';\nimport { Fragment } from './create-element';\n\n/**\n * Base Component class. Provides `setState()` and `forceUpdate()`, which\n * trigger rendering\n * @param {object} props The initial component props\n * @param {object} context The initial context from parent components'\n * getChildContext\n */\nexport function Component(props, context) {\n\tthis.props = props;\n\tthis.context = context;\n}\n\n/**\n * Update component state and schedule a re-render.\n * @this {import('./internal').Component}\n * @param {object | ((s: object, p: object) => object)} update A hash of state\n * properties to update with new values or a function that given the current\n * state and props returns a new partial state\n * @param {() => void} [callback] A function to be called once component state is\n * updated\n */\nComponent.prototype.setState = function(update, callback) {\n\t// only clone state when copying to nextState the first time.\n\tlet s;\n\tif (this._nextState != null && this._nextState !== this.state) {\n\t\ts = this._nextState;\n\t} else {\n\t\ts = this._nextState = assign({}, this.state);\n\t}\n\n\tif (typeof update == 'function') {\n\t\t// Some libraries like `immer` mark the current state as readonly,\n\t\t// preventing us from mutating it, so we need to clone it. See #2716\n\t\tupdate = update(assign({}, s), this.props);\n\t}\n\n\tif (update) {\n\t\tassign(s, update);\n\t}\n\n\t// Skip update if updater function returned null\n\tif (update == null) return;\n\n\tif (this._vnode) {\n\t\tif (callback) {\n\t\t\tthis._stateCallbacks.push(callback);\n\t\t}\n\t\tenqueueRender(this);\n\t}\n};\n\n/**\n * Immediately perform a synchronous re-render of the component\n * @this {import('./internal').Component}\n * @param {() => void} [callback] A function to be called after component is\n * re-rendered\n */\nComponent.prototype.forceUpdate = function(callback) {\n\tif (this._vnode) {\n\t\t// Set render mode so that we can differentiate where the render request\n\t\t// is coming from. We need this because forceUpdate should never call\n\t\t// shouldComponentUpdate\n\t\tthis._force = true;\n\t\tif (callback) this._renderCallbacks.push(callback);\n\t\tenqueueRender(this);\n\t}\n};\n\n/**\n * Accepts `props` and `state`, and returns a new Virtual DOM tree to build.\n * Virtual DOM is generally constructed via [JSX](http://jasonformat.com/wtf-is-jsx).\n * @param {object} props Props (eg: JSX attributes) received from parent\n * element/component\n * @param {object} state The component's current state\n * @param {object} context Context object, as returned by the nearest\n * ancestor's `getChildContext()`\n * @returns {import('./index').ComponentChildren | void}\n */\nComponent.prototype.render = Fragment;\n\n/**\n * @param {import('./internal').VNode} vnode\n * @param {number | null} [childIndex]\n */\nexport function getDomSibling(vnode, childIndex) {\n\tif (childIndex == null) {\n\t\t// Use childIndex==null as a signal to resume the search from the vnode's sibling\n\t\treturn vnode._parent\n\t\t\t? getDomSibling(vnode._parent, vnode._parent._children.indexOf(vnode) + 1)\n\t\t\t: null;\n\t}\n\n\tlet sibling;\n\tfor (; childIndex < vnode._children.length; childIndex++) {\n\t\tsibling = vnode._children[childIndex];\n\n\t\tif (sibling != null && sibling._dom != null) {\n\t\t\t// Since updateParentDomPointers keeps _dom pointer correct,\n\t\t\t// we can rely on _dom to tell us if this subtree contains a\n\t\t\t// rendered DOM node, and what the first rendered DOM node is\n\t\t\treturn sibling._dom;\n\t\t}\n\t}\n\n\t// If we get here, we have not found a DOM node in this vnode's children.\n\t// We must resume from this vnode's sibling (in it's parent _children array)\n\t// Only climb up and search the parent if we aren't searching through a DOM\n\t// VNode (meaning we reached the DOM parent of the original vnode that began\n\t// the search)\n\treturn typeof vnode.type == 'function' ? getDomSibling(vnode) : null;\n}\n\n/**\n * Trigger in-place re-rendering of a component.\n * @param {import('./internal').Component} component The component to rerender\n */\nfunction renderComponent(component) {\n\tlet vnode = component._vnode,\n\t\toldDom = vnode._dom,\n\t\tparentDom = component._parentDom;\n\n\tif (parentDom) {\n\t\tlet commitQueue = [];\n\t\tconst oldVNode = assign({}, vnode);\n\t\toldVNode._original = vnode._original + 1;\n\n\t\tdiff(\n\t\t\tparentDom,\n\t\t\tvnode,\n\t\t\toldVNode,\n\t\t\tcomponent._globalContext,\n\t\t\tparentDom.ownerSVGElement !== undefined,\n\t\t\tvnode._hydrating != null ? [oldDom] : null,\n\t\t\tcommitQueue,\n\t\t\toldDom == null ? getDomSibling(vnode) : oldDom,\n\t\t\tvnode._hydrating\n\t\t);\n\t\tcommitRoot(commitQueue, vnode);\n\n\t\tif (vnode._dom != oldDom) {\n\t\t\tupdateParentDomPointers(vnode);\n\t\t}\n\t}\n}\n\n/**\n * @param {import('./internal').VNode} vnode\n */\nfunction updateParentDomPointers(vnode) {\n\tif ((vnode = vnode._parent) != null && vnode._component != null) {\n\t\tvnode._dom = vnode._component.base = null;\n\t\tfor (let i = 0; i < vnode._children.length; i++) {\n\t\t\tlet child = vnode._children[i];\n\t\t\tif (child != null && child._dom != null) {\n\t\t\t\tvnode._dom = vnode._component.base = child._dom;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\treturn updateParentDomPointers(vnode);\n\t}\n}\n\n/**\n * The render queue\n * @type {Array}\n */\nlet rerenderQueue = [];\n\n/*\n * The value of `Component.debounce` must asynchronously invoke the passed in callback. It is\n * important that contributors to Preact can consistently reason about what calls to `setState`, etc.\n * do, and when their effects will be applied. See the links below for some further reading on designing\n * asynchronous APIs.\n * * [Designing APIs for Asynchrony](https://blog.izs.me/2013/08/designing-apis-for-asynchrony)\n * * [Callbacks synchronous and asynchronous](https://blog.ometer.com/2011/07/24/callbacks-synchronous-and-asynchronous/)\n */\n\nlet prevDebounce;\n\n/**\n * Enqueue a rerender of a component\n * @param {import('./internal').Component} c The component to rerender\n */\nexport function enqueueRender(c) {\n\tif (\n\t\t(!c._dirty &&\n\t\t\t(c._dirty = true) &&\n\t\t\trerenderQueue.push(c) &&\n\t\t\t!process._rerenderCount++) ||\n\t\tprevDebounce !== options.debounceRendering\n\t) {\n\t\tprevDebounce = options.debounceRendering;\n\t\t(prevDebounce || setTimeout)(process);\n\t}\n}\n\n/** Flush the render queue by rerendering all queued components */\nfunction process() {\n\tlet queue;\n\twhile ((process._rerenderCount = rerenderQueue.length)) {\n\t\tqueue = rerenderQueue.sort((a, b) => a._vnode._depth - b._vnode._depth);\n\t\trerenderQueue = [];\n\t\t// Don't update `renderCount` yet. Keep its value non-zero to prevent unnecessary\n\t\t// process() calls from getting scheduled while `queue` is still being consumed.\n\t\tqueue.some(c => {\n\t\t\tif (c._dirty) renderComponent(c);\n\t\t});\n\t}\n}\n\nprocess._rerenderCount = 0;\n","import { enqueueRender } from './component';\n\nexport let i = 0;\n\nexport function createContext(defaultValue, contextId) {\n\tcontextId = '__cC' + i++;\n\n\tconst context = {\n\t\t_id: contextId,\n\t\t_defaultValue: defaultValue,\n\t\t/** @type {import('./internal').FunctionComponent} */\n\t\tConsumer(props, contextValue) {\n\t\t\t// return props.children(\n\t\t\t// \tcontext[contextId] ? context[contextId].props.value : defaultValue\n\t\t\t// );\n\t\t\treturn props.children(contextValue);\n\t\t},\n\t\t/** @type {import('./internal').FunctionComponent} */\n\t\tProvider(props) {\n\t\t\tif (!this.getChildContext) {\n\t\t\t\tlet subs = [];\n\t\t\t\tlet ctx = {};\n\t\t\t\tctx[contextId] = this;\n\n\t\t\t\tthis.getChildContext = () => ctx;\n\n\t\t\t\tthis.shouldComponentUpdate = function(_props) {\n\t\t\t\t\tif (this.props.value !== _props.value) {\n\t\t\t\t\t\t// I think the forced value propagation here was only needed when `options.debounceRendering` was being bypassed:\n\t\t\t\t\t\t// https://github.com/preactjs/preact/commit/4d339fb803bea09e9f198abf38ca1bf8ea4b7771#diff-54682ce380935a717e41b8bfc54737f6R358\n\t\t\t\t\t\t// In those cases though, even with the value corrected, we're double-rendering all nodes.\n\t\t\t\t\t\t// It might be better to just tell folks not to use force-sync mode.\n\t\t\t\t\t\t// Currently, using `useContext()` in a class component will overwrite its `this.context` value.\n\t\t\t\t\t\t// subs.some(c => {\n\t\t\t\t\t\t// \tc.context = _props.value;\n\t\t\t\t\t\t// \tenqueueRender(c);\n\t\t\t\t\t\t// });\n\n\t\t\t\t\t\t// subs.some(c => {\n\t\t\t\t\t\t// \tc.context[contextId] = _props.value;\n\t\t\t\t\t\t// \tenqueueRender(c);\n\t\t\t\t\t\t// });\n\t\t\t\t\t\tsubs.some(enqueueRender);\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\tthis.sub = c => {\n\t\t\t\t\tsubs.push(c);\n\t\t\t\t\tlet old = c.componentWillUnmount;\n\t\t\t\t\tc.componentWillUnmount = () => {\n\t\t\t\t\t\tsubs.splice(subs.indexOf(c), 1);\n\t\t\t\t\t\tif (old) old.call(c);\n\t\t\t\t\t};\n\t\t\t\t};\n\t\t\t}\n\n\t\t\treturn props.children;\n\t\t}\n\t};\n\n\t// Devtools needs access to the context object when it\n\t// encounters a Provider. This is necessary to support\n\t// setting `displayName` on the context object instead\n\t// of on the component itself. See:\n\t// https://reactjs.org/docs/context.html#contextdisplayname\n\n\treturn (context.Provider._contextRef = context.Consumer.contextType = context);\n}\n","export const EMPTY_OBJ = {};\nexport const EMPTY_ARR = [];\nexport const IS_NON_DIMENSIONAL = /acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;\n","import { diff, unmount, applyRef } from './index';\nimport { createVNode, Fragment } from '../create-element';\nimport { EMPTY_OBJ, EMPTY_ARR } from '../constants';\nimport { getDomSibling } from '../component';\n\n/**\n * Diff the children of a virtual node\n * @param {import('../internal').PreactElement} parentDom The DOM element whose\n * children are being diffed\n * @param {import('../internal').ComponentChildren[]} renderResult\n * @param {import('../internal').VNode} newParentVNode The new virtual\n * node whose children should be diff'ed against oldParentVNode\n * @param {import('../internal').VNode} oldParentVNode The old virtual\n * node whose children should be diff'ed against newParentVNode\n * @param {object} globalContext The current context object - modified by getChildContext\n * @param {boolean} isSvg Whether or not this DOM node is an SVG node\n * @param {Array} excessDomChildren\n * @param {Array} commitQueue List of components\n * which have callbacks to invoke in commitRoot\n * @param {import('../internal').PreactElement} oldDom The current attached DOM\n * element any new dom elements should be placed around. Likely `null` on first\n * render (except when hydrating). Can be a sibling DOM element when diffing\n * Fragments that have siblings. In most cases, it starts out as `oldChildren[0]._dom`.\n * @param {boolean} isHydrating Whether or not we are in hydration\n */\nexport function diffChildren(\n\tparentDom,\n\trenderResult,\n\tnewParentVNode,\n\toldParentVNode,\n\tglobalContext,\n\tisSvg,\n\texcessDomChildren,\n\tcommitQueue,\n\toldDom,\n\tisHydrating\n) {\n\tlet i, j, oldVNode, childVNode, newDom, firstChildDom, refs;\n\n\t// This is a compression of oldParentVNode!=null && oldParentVNode != EMPTY_OBJ && oldParentVNode._children || EMPTY_ARR\n\t// as EMPTY_OBJ._children should be `undefined`.\n\tlet oldChildren = (oldParentVNode && oldParentVNode._children) || EMPTY_ARR;\n\n\tlet oldChildrenLength = oldChildren.length;\n\n\tnewParentVNode._children = [];\n\tfor (i = 0; i < renderResult.length; i++) {\n\t\tchildVNode = renderResult[i];\n\n\t\tif (childVNode == null || typeof childVNode == 'boolean') {\n\t\t\tchildVNode = newParentVNode._children[i] = null;\n\t\t}\n\t\t// If this newVNode is being reused (e.g. {reuse}{reuse} ) in the same diff,\n\t\t// or we are rendering a component (e.g. setState) copy the oldVNodes so it can have\n\t\t// it's own DOM & etc. pointers\n\t\telse if (\n\t\t\ttypeof childVNode == 'string' ||\n\t\t\ttypeof childVNode == 'number' ||\n\t\t\t// eslint-disable-next-line valid-typeof\n\t\t\ttypeof childVNode == 'bigint'\n\t\t) {\n\t\t\tchildVNode = newParentVNode._children[i] = createVNode(\n\t\t\t\tnull,\n\t\t\t\tchildVNode,\n\t\t\t\tnull,\n\t\t\t\tnull,\n\t\t\t\tchildVNode\n\t\t\t);\n\t\t} else if (Array.isArray(childVNode)) {\n\t\t\tchildVNode = newParentVNode._children[i] = createVNode(\n\t\t\t\tFragment,\n\t\t\t\t{ children: childVNode },\n\t\t\t\tnull,\n\t\t\t\tnull,\n\t\t\t\tnull\n\t\t\t);\n\t\t} else if (childVNode._depth > 0) {\n\t\t\t// VNode is already in use, clone it. This can happen in the following\n\t\t\t// scenario:\n\t\t\t// const reuse = \n\t\t\t// {reuse}{reuse} \n\t\t\tchildVNode = newParentVNode._children[i] = createVNode(\n\t\t\t\tchildVNode.type,\n\t\t\t\tchildVNode.props,\n\t\t\t\tchildVNode.key,\n\t\t\t\tchildVNode.ref ? childVNode.ref : null,\n\t\t\t\tchildVNode._original\n\t\t\t);\n\t\t} else {\n\t\t\tchildVNode = newParentVNode._children[i] = childVNode;\n\t\t}\n\n\t\t// Terser removes the `continue` here and wraps the loop body\n\t\t// in a `if (childVNode) { ... } condition\n\t\tif (childVNode == null) {\n\t\t\tcontinue;\n\t\t}\n\n\t\tchildVNode._parent = newParentVNode;\n\t\tchildVNode._depth = newParentVNode._depth + 1;\n\n\t\t// Check if we find a corresponding element in oldChildren.\n\t\t// If found, delete the array item by setting to `undefined`.\n\t\t// We use `undefined`, as `null` is reserved for empty placeholders\n\t\t// (holes).\n\t\toldVNode = oldChildren[i];\n\n\t\tif (\n\t\t\toldVNode === null ||\n\t\t\t(oldVNode &&\n\t\t\t\tchildVNode.key == oldVNode.key &&\n\t\t\t\tchildVNode.type === oldVNode.type)\n\t\t) {\n\t\t\toldChildren[i] = undefined;\n\t\t} else {\n\t\t\t// Either oldVNode === undefined or oldChildrenLength > 0,\n\t\t\t// so after this loop oldVNode == null or oldVNode is a valid value.\n\t\t\tfor (j = 0; j < oldChildrenLength; j++) {\n\t\t\t\toldVNode = oldChildren[j];\n\t\t\t\t// If childVNode is unkeyed, we only match similarly unkeyed nodes, otherwise we match by key.\n\t\t\t\t// We always match by type (in either case).\n\t\t\t\tif (\n\t\t\t\t\toldVNode &&\n\t\t\t\t\tchildVNode.key == oldVNode.key &&\n\t\t\t\t\tchildVNode.type === oldVNode.type\n\t\t\t\t) {\n\t\t\t\t\toldChildren[j] = undefined;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\toldVNode = null;\n\t\t\t}\n\t\t}\n\n\t\toldVNode = oldVNode || EMPTY_OBJ;\n\n\t\t// Morph the old element into the new one, but don't append it to the dom yet\n\t\tdiff(\n\t\t\tparentDom,\n\t\t\tchildVNode,\n\t\t\toldVNode,\n\t\t\tglobalContext,\n\t\t\tisSvg,\n\t\t\texcessDomChildren,\n\t\t\tcommitQueue,\n\t\t\toldDom,\n\t\t\tisHydrating\n\t\t);\n\n\t\tnewDom = childVNode._dom;\n\n\t\tif ((j = childVNode.ref) && oldVNode.ref != j) {\n\t\t\tif (!refs) refs = [];\n\t\t\tif (oldVNode.ref) refs.push(oldVNode.ref, null, childVNode);\n\t\t\trefs.push(j, childVNode._component || newDom, childVNode);\n\t\t}\n\n\t\tif (newDom != null) {\n\t\t\tif (firstChildDom == null) {\n\t\t\t\tfirstChildDom = newDom;\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\ttypeof childVNode.type == 'function' &&\n\t\t\t\tchildVNode._children === oldVNode._children\n\t\t\t) {\n\t\t\t\tchildVNode._nextDom = oldDom = reorderChildren(\n\t\t\t\t\tchildVNode,\n\t\t\t\t\toldDom,\n\t\t\t\t\tparentDom\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\toldDom = placeChild(\n\t\t\t\t\tparentDom,\n\t\t\t\t\tchildVNode,\n\t\t\t\t\toldVNode,\n\t\t\t\t\toldChildren,\n\t\t\t\t\tnewDom,\n\t\t\t\t\toldDom\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tif (typeof newParentVNode.type == 'function') {\n\t\t\t\t// Because the newParentVNode is Fragment-like, we need to set it's\n\t\t\t\t// _nextDom property to the nextSibling of its last child DOM node.\n\t\t\t\t//\n\t\t\t\t// `oldDom` contains the correct value here because if the last child\n\t\t\t\t// is a Fragment-like, then oldDom has already been set to that child's _nextDom.\n\t\t\t\t// If the last child is a DOM VNode, then oldDom will be set to that DOM\n\t\t\t\t// node's nextSibling.\n\t\t\t\tnewParentVNode._nextDom = oldDom;\n\t\t\t}\n\t\t} else if (\n\t\t\toldDom &&\n\t\t\toldVNode._dom == oldDom &&\n\t\t\toldDom.parentNode != parentDom\n\t\t) {\n\t\t\t// The above condition is to handle null placeholders. See test in placeholder.test.js:\n\t\t\t// `efficiently replace null placeholders in parent rerenders`\n\t\t\toldDom = getDomSibling(oldVNode);\n\t\t}\n\t}\n\n\tnewParentVNode._dom = firstChildDom;\n\n\t// Remove remaining oldChildren if there are any.\n\tfor (i = oldChildrenLength; i--; ) {\n\t\tif (oldChildren[i] != null) {\n\t\t\tunmount(oldChildren[i], oldChildren[i]);\n\t\t}\n\t}\n\n\t// Set refs only after unmount\n\tif (refs) {\n\t\tfor (i = 0; i < refs.length; i++) {\n\t\t\tapplyRef(refs[i], refs[++i], refs[++i]);\n\t\t}\n\t}\n}\n\nfunction reorderChildren(childVNode, oldDom, parentDom) {\n\t// Note: VNodes in nested suspended trees may be missing _children.\n\tlet c = childVNode._children;\n\tlet tmp = 0;\n\tfor (; c && tmp < c.length; tmp++) {\n\t\tlet vnode = c[tmp];\n\t\tif (vnode) {\n\t\t\t// We typically enter this code path on sCU bailout, where we copy\n\t\t\t// oldVNode._children to newVNode._children. If that is the case, we need\n\t\t\t// to update the old children's _parent pointer to point to the newVNode\n\t\t\t// (childVNode here).\n\t\t\tvnode._parent = childVNode;\n\n\t\t\tif (typeof vnode.type == 'function') {\n\t\t\t\toldDom = reorderChildren(vnode, oldDom, parentDom);\n\t\t\t} else {\n\t\t\t\toldDom = placeChild(parentDom, vnode, vnode, c, vnode._dom, oldDom);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn oldDom;\n}\n\n/**\n * Flatten and loop through the children of a virtual node\n * @param {import('../index').ComponentChildren} children The unflattened\n * children of a virtual node\n * @returns {import('../internal').VNode[]}\n */\nexport function toChildArray(children, out) {\n\tout = out || [];\n\tif (children == null || typeof children == 'boolean') {\n\t} else if (Array.isArray(children)) {\n\t\tchildren.some(child => {\n\t\t\ttoChildArray(child, out);\n\t\t});\n\t} else {\n\t\tout.push(children);\n\t}\n\treturn out;\n}\n\nfunction placeChild(\n\tparentDom,\n\tchildVNode,\n\toldVNode,\n\toldChildren,\n\tnewDom,\n\toldDom\n) {\n\tlet nextDom;\n\tif (childVNode._nextDom !== undefined) {\n\t\t// Only Fragments or components that return Fragment like VNodes will\n\t\t// have a non-undefined _nextDom. Continue the diff from the sibling\n\t\t// of last DOM child of this child VNode\n\t\tnextDom = childVNode._nextDom;\n\n\t\t// Eagerly cleanup _nextDom. We don't need to persist the value because\n\t\t// it is only used by `diffChildren` to determine where to resume the diff after\n\t\t// diffing Components and Fragments. Once we store it the nextDOM local var, we\n\t\t// can clean up the property\n\t\tchildVNode._nextDom = undefined;\n\t} else if (\n\t\toldVNode == null ||\n\t\tnewDom != oldDom ||\n\t\tnewDom.parentNode == null\n\t) {\n\t\touter: if (oldDom == null || oldDom.parentNode !== parentDom) {\n\t\t\tparentDom.appendChild(newDom);\n\t\t\tnextDom = null;\n\t\t} else {\n\t\t\t// `j href (xlink:href was removed from SVG and isn't needed)\n\t\t\t// - className --> class\n\t\t\tname = name.replace(/xlink(H|:h)/, 'h').replace(/sName$/, 's');\n\t\t} else if (\n\t\t\tname !== 'href' &&\n\t\t\tname !== 'list' &&\n\t\t\tname !== 'form' &&\n\t\t\t// Default value in browsers is `-1` and an empty string is\n\t\t\t// cast to `0` instead\n\t\t\tname !== 'tabIndex' &&\n\t\t\tname !== 'download' &&\n\t\t\tname in dom\n\t\t) {\n\t\t\ttry {\n\t\t\t\tdom[name] = value == null ? '' : value;\n\t\t\t\t// labelled break is 1b smaller here than a return statement (sorry)\n\t\t\t\tbreak o;\n\t\t\t} catch (e) {}\n\t\t}\n\n\t\t// ARIA-attributes have a different notion of boolean values.\n\t\t// The value `false` is different from the attribute not\n\t\t// existing on the DOM, so we can't remove it. For non-boolean\n\t\t// ARIA-attributes we could treat false as a removal, but the\n\t\t// amount of exceptions would cost us too many bytes. On top of\n\t\t// that other VDOM frameworks also always stringify `false`.\n\n\t\tif (typeof value === 'function') {\n\t\t\t// never serialize functions as attribute values\n\t\t} else if (value != null && (value !== false || name.indexOf('-') != -1)) {\n\t\t\tdom.setAttribute(name, value);\n\t\t} else {\n\t\t\tdom.removeAttribute(name);\n\t\t}\n\t}\n}\n\n/**\n * Proxy an event to hooked event handlers\n * @param {Event} e The event object from the browser\n * @private\n */\nfunction eventProxy(e) {\n\tthis._listeners[e.type + false](options.event ? options.event(e) : e);\n}\n\nfunction eventProxyCapture(e) {\n\tthis._listeners[e.type + true](options.event ? options.event(e) : e);\n}\n","import { EMPTY_OBJ } from '../constants';\nimport { Component, getDomSibling } from '../component';\nimport { Fragment } from '../create-element';\nimport { diffChildren } from './children';\nimport { diffProps, setProperty } from './props';\nimport { assign, removeNode, slice } from '../util';\nimport options from '../options';\n\n/**\n * Diff two virtual nodes and apply proper changes to the DOM\n * @param {import('../internal').PreactElement} parentDom The parent of the DOM element\n * @param {import('../internal').VNode} newVNode The new virtual node\n * @param {import('../internal').VNode} oldVNode The old virtual node\n * @param {object} globalContext The current context object. Modified by getChildContext\n * @param {boolean} isSvg Whether or not this element is an SVG node\n * @param {Array} excessDomChildren\n * @param {Array} commitQueue List of components\n * which have callbacks to invoke in commitRoot\n * @param {import('../internal').PreactElement} oldDom The current attached DOM\n * element any new dom elements should be placed around. Likely `null` on first\n * render (except when hydrating). Can be a sibling DOM element when diffing\n * Fragments that have siblings. In most cases, it starts out as `oldChildren[0]._dom`.\n * @param {boolean} [isHydrating] Whether or not we are in hydration\n */\nexport function diff(\n\tparentDom,\n\tnewVNode,\n\toldVNode,\n\tglobalContext,\n\tisSvg,\n\texcessDomChildren,\n\tcommitQueue,\n\toldDom,\n\tisHydrating\n) {\n\tlet tmp,\n\t\tnewType = newVNode.type;\n\n\t// When passing through createElement it assigns the object\n\t// constructor as undefined. This to prevent JSON-injection.\n\tif (newVNode.constructor !== undefined) return null;\n\n\t// If the previous diff bailed out, resume creating/hydrating.\n\tif (oldVNode._hydrating != null) {\n\t\tisHydrating = oldVNode._hydrating;\n\t\toldDom = newVNode._dom = oldVNode._dom;\n\t\t// if we resume, we want the tree to be \"unlocked\"\n\t\tnewVNode._hydrating = null;\n\t\texcessDomChildren = [oldDom];\n\t}\n\n\tif ((tmp = options._diff)) tmp(newVNode);\n\n\ttry {\n\t\touter: if (typeof newType == 'function') {\n\t\t\tlet c, isNew, oldProps, oldState, snapshot, clearProcessingException;\n\t\t\tlet newProps = newVNode.props;\n\n\t\t\t// Necessary for createContext api. Setting this property will pass\n\t\t\t// the context value as `this.context` just for this component.\n\t\t\ttmp = newType.contextType;\n\t\t\tlet provider = tmp && globalContext[tmp._id];\n\t\t\tlet componentContext = tmp\n\t\t\t\t? provider\n\t\t\t\t\t? provider.props.value\n\t\t\t\t\t: tmp._defaultValue\n\t\t\t\t: globalContext;\n\n\t\t\t// Get component and set it to `c`\n\t\t\tif (oldVNode._component) {\n\t\t\t\tc = newVNode._component = oldVNode._component;\n\t\t\t\tclearProcessingException = c._processingException = c._pendingError;\n\t\t\t} else {\n\t\t\t\t// Instantiate the new component\n\t\t\t\tif ('prototype' in newType && newType.prototype.render) {\n\t\t\t\t\t// @ts-ignore The check above verifies that newType is suppose to be constructed\n\t\t\t\t\tnewVNode._component = c = new newType(newProps, componentContext); // eslint-disable-line new-cap\n\t\t\t\t} else {\n\t\t\t\t\t// @ts-ignore Trust me, Component implements the interface we want\n\t\t\t\t\tnewVNode._component = c = new Component(newProps, componentContext);\n\t\t\t\t\tc.constructor = newType;\n\t\t\t\t\tc.render = doRender;\n\t\t\t\t}\n\t\t\t\tif (provider) provider.sub(c);\n\n\t\t\t\tc.props = newProps;\n\t\t\t\tif (!c.state) c.state = {};\n\t\t\t\tc.context = componentContext;\n\t\t\t\tc._globalContext = globalContext;\n\t\t\t\tisNew = c._dirty = true;\n\t\t\t\tc._renderCallbacks = [];\n\t\t\t\tc._stateCallbacks = [];\n\t\t\t}\n\n\t\t\t// Invoke getDerivedStateFromProps\n\t\t\tif (c._nextState == null) {\n\t\t\t\tc._nextState = c.state;\n\t\t\t}\n\n\t\t\tif (newType.getDerivedStateFromProps != null) {\n\t\t\t\tif (c._nextState == c.state) {\n\t\t\t\t\tc._nextState = assign({}, c._nextState);\n\t\t\t\t}\n\n\t\t\t\tassign(\n\t\t\t\t\tc._nextState,\n\t\t\t\t\tnewType.getDerivedStateFromProps(newProps, c._nextState)\n\t\t\t\t);\n\t\t\t}\n\n\t\t\toldProps = c.props;\n\t\t\toldState = c.state;\n\n\t\t\t// Invoke pre-render lifecycle methods\n\t\t\tif (isNew) {\n\t\t\t\tif (\n\t\t\t\t\tnewType.getDerivedStateFromProps == null &&\n\t\t\t\t\tc.componentWillMount != null\n\t\t\t\t) {\n\t\t\t\t\tc.componentWillMount();\n\t\t\t\t}\n\n\t\t\t\tif (c.componentDidMount != null) {\n\t\t\t\t\tc._renderCallbacks.push(c.componentDidMount);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (\n\t\t\t\t\tnewType.getDerivedStateFromProps == null &&\n\t\t\t\t\tnewProps !== oldProps &&\n\t\t\t\t\tc.componentWillReceiveProps != null\n\t\t\t\t) {\n\t\t\t\t\tc.componentWillReceiveProps(newProps, componentContext);\n\t\t\t\t}\n\n\t\t\t\tif (\n\t\t\t\t\t(!c._force &&\n\t\t\t\t\t\tc.shouldComponentUpdate != null &&\n\t\t\t\t\t\tc.shouldComponentUpdate(\n\t\t\t\t\t\t\tnewProps,\n\t\t\t\t\t\t\tc._nextState,\n\t\t\t\t\t\t\tcomponentContext\n\t\t\t\t\t\t) === false) ||\n\t\t\t\t\tnewVNode._original === oldVNode._original\n\t\t\t\t) {\n\t\t\t\t\tc.props = newProps;\n\t\t\t\t\tc.state = c._nextState;\n\t\t\t\t\t// More info about this here: https://gist.github.com/JoviDeCroock/bec5f2ce93544d2e6070ef8e0036e4e8\n\t\t\t\t\tif (newVNode._original !== oldVNode._original) c._dirty = false;\n\t\t\t\t\tc._vnode = newVNode;\n\t\t\t\t\tnewVNode._dom = oldVNode._dom;\n\t\t\t\t\tnewVNode._children = oldVNode._children;\n\t\t\t\t\tnewVNode._children.forEach(vnode => {\n\t\t\t\t\t\tif (vnode) vnode._parent = newVNode;\n\t\t\t\t\t});\n\n\t\t\t\t\tfor (let i = 0; i < c._stateCallbacks.length; i++) {\n\t\t\t\t\t\tc._renderCallbacks.push(c._stateCallbacks[i]);\n\t\t\t\t\t}\n\t\t\t\t\tc._stateCallbacks = [];\n\n\t\t\t\t\tif (c._renderCallbacks.length) {\n\t\t\t\t\t\tcommitQueue.push(c);\n\t\t\t\t\t}\n\n\t\t\t\t\tbreak outer;\n\t\t\t\t}\n\n\t\t\t\tif (c.componentWillUpdate != null) {\n\t\t\t\t\tc.componentWillUpdate(newProps, c._nextState, componentContext);\n\t\t\t\t}\n\n\t\t\t\tif (c.componentDidUpdate != null) {\n\t\t\t\t\tc._renderCallbacks.push(() => {\n\t\t\t\t\t\tc.componentDidUpdate(oldProps, oldState, snapshot);\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tc.context = componentContext;\n\t\t\tc.props = newProps;\n\t\t\tc._vnode = newVNode;\n\t\t\tc._parentDom = parentDom;\n\n\t\t\tlet renderHook = options._render,\n\t\t\t\tcount = 0;\n\t\t\tif ('prototype' in newType && newType.prototype.render) {\n\t\t\t\tc.state = c._nextState;\n\t\t\t\tc._dirty = false;\n\n\t\t\t\tif (renderHook) renderHook(newVNode);\n\n\t\t\t\ttmp = c.render(c.props, c.state, c.context);\n\n\t\t\t\tfor (let i = 0; i < c._stateCallbacks.length; i++) {\n\t\t\t\t\tc._renderCallbacks.push(c._stateCallbacks[i]);\n\t\t\t\t}\n\t\t\t\tc._stateCallbacks = [];\n\t\t\t} else {\n\t\t\t\tdo {\n\t\t\t\t\tc._dirty = false;\n\t\t\t\t\tif (renderHook) renderHook(newVNode);\n\n\t\t\t\t\ttmp = c.render(c.props, c.state, c.context);\n\n\t\t\t\t\t// Handle setState called in render, see #2553\n\t\t\t\t\tc.state = c._nextState;\n\t\t\t\t} while (c._dirty && ++count < 25);\n\t\t\t}\n\n\t\t\t// Handle setState called in render, see #2553\n\t\t\tc.state = c._nextState;\n\n\t\t\tif (c.getChildContext != null) {\n\t\t\t\tglobalContext = assign(assign({}, globalContext), c.getChildContext());\n\t\t\t}\n\n\t\t\tif (!isNew && c.getSnapshotBeforeUpdate != null) {\n\t\t\t\tsnapshot = c.getSnapshotBeforeUpdate(oldProps, oldState);\n\t\t\t}\n\n\t\t\tlet isTopLevelFragment =\n\t\t\t\ttmp != null && tmp.type === Fragment && tmp.key == null;\n\t\t\tlet renderResult = isTopLevelFragment ? tmp.props.children : tmp;\n\n\t\t\tdiffChildren(\n\t\t\t\tparentDom,\n\t\t\t\tArray.isArray(renderResult) ? renderResult : [renderResult],\n\t\t\t\tnewVNode,\n\t\t\t\toldVNode,\n\t\t\t\tglobalContext,\n\t\t\t\tisSvg,\n\t\t\t\texcessDomChildren,\n\t\t\t\tcommitQueue,\n\t\t\t\toldDom,\n\t\t\t\tisHydrating\n\t\t\t);\n\n\t\t\tc.base = newVNode._dom;\n\n\t\t\t// We successfully rendered this VNode, unset any stored hydration/bailout state:\n\t\t\tnewVNode._hydrating = null;\n\n\t\t\tif (c._renderCallbacks.length) {\n\t\t\t\tcommitQueue.push(c);\n\t\t\t}\n\n\t\t\tif (clearProcessingException) {\n\t\t\t\tc._pendingError = c._processingException = null;\n\t\t\t}\n\n\t\t\tc._force = false;\n\t\t} else if (\n\t\t\texcessDomChildren == null &&\n\t\t\tnewVNode._original === oldVNode._original\n\t\t) {\n\t\t\tnewVNode._children = oldVNode._children;\n\t\t\tnewVNode._dom = oldVNode._dom;\n\t\t} else {\n\t\t\tnewVNode._dom = diffElementNodes(\n\t\t\t\toldVNode._dom,\n\t\t\t\tnewVNode,\n\t\t\t\toldVNode,\n\t\t\t\tglobalContext,\n\t\t\t\tisSvg,\n\t\t\t\texcessDomChildren,\n\t\t\t\tcommitQueue,\n\t\t\t\tisHydrating\n\t\t\t);\n\t\t}\n\n\t\tif ((tmp = options.diffed)) tmp(newVNode);\n\t} catch (e) {\n\t\tnewVNode._original = null;\n\t\t// if hydrating or creating initial tree, bailout preserves DOM:\n\t\tif (isHydrating || excessDomChildren != null) {\n\t\t\tnewVNode._dom = oldDom;\n\t\t\tnewVNode._hydrating = !!isHydrating;\n\t\t\texcessDomChildren[excessDomChildren.indexOf(oldDom)] = null;\n\t\t\t// ^ could possibly be simplified to:\n\t\t\t// excessDomChildren.length = 0;\n\t\t}\n\t\toptions._catchError(e, newVNode, oldVNode);\n\t}\n}\n\n/**\n * @param {Array} commitQueue List of components\n * which have callbacks to invoke in commitRoot\n * @param {import('../internal').VNode} root\n */\nexport function commitRoot(commitQueue, root) {\n\tif (options._commit) options._commit(root, commitQueue);\n\n\tcommitQueue.some(c => {\n\t\ttry {\n\t\t\t// @ts-ignore Reuse the commitQueue variable here so the type changes\n\t\t\tcommitQueue = c._renderCallbacks;\n\t\t\tc._renderCallbacks = [];\n\t\t\tcommitQueue.some(cb => {\n\t\t\t\t// @ts-ignore See above ts-ignore on commitQueue\n\t\t\t\tcb.call(c);\n\t\t\t});\n\t\t} catch (e) {\n\t\t\toptions._catchError(e, c._vnode);\n\t\t}\n\t});\n}\n\n/**\n * Diff two virtual nodes representing DOM element\n * @param {import('../internal').PreactElement} dom The DOM element representing\n * the virtual nodes being diffed\n * @param {import('../internal').VNode} newVNode The new virtual node\n * @param {import('../internal').VNode} oldVNode The old virtual node\n * @param {object} globalContext The current context object\n * @param {boolean} isSvg Whether or not this DOM node is an SVG node\n * @param {*} excessDomChildren\n * @param {Array} commitQueue List of components\n * which have callbacks to invoke in commitRoot\n * @param {boolean} isHydrating Whether or not we are in hydration\n * @returns {import('../internal').PreactElement}\n */\nfunction diffElementNodes(\n\tdom,\n\tnewVNode,\n\toldVNode,\n\tglobalContext,\n\tisSvg,\n\texcessDomChildren,\n\tcommitQueue,\n\tisHydrating\n) {\n\tlet oldProps = oldVNode.props;\n\tlet newProps = newVNode.props;\n\tlet nodeType = newVNode.type;\n\tlet i = 0;\n\n\t// Tracks entering and exiting SVG namespace when descending through the tree.\n\tif (nodeType === 'svg') isSvg = true;\n\n\tif (excessDomChildren != null) {\n\t\tfor (; i < excessDomChildren.length; i++) {\n\t\t\tconst child = excessDomChildren[i];\n\n\t\t\t// if newVNode matches an element in excessDomChildren or the `dom`\n\t\t\t// argument matches an element in excessDomChildren, remove it from\n\t\t\t// excessDomChildren so it isn't later removed in diffChildren\n\t\t\tif (\n\t\t\t\tchild &&\n\t\t\t\t'setAttribute' in child === !!nodeType &&\n\t\t\t\t(nodeType ? child.localName === nodeType : child.nodeType === 3)\n\t\t\t) {\n\t\t\t\tdom = child;\n\t\t\t\texcessDomChildren[i] = null;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tif (dom == null) {\n\t\tif (nodeType === null) {\n\t\t\t// @ts-ignore createTextNode returns Text, we expect PreactElement\n\t\t\treturn document.createTextNode(newProps);\n\t\t}\n\n\t\tif (isSvg) {\n\t\t\tdom = document.createElementNS(\n\t\t\t\t'http://www.w3.org/2000/svg',\n\t\t\t\t// @ts-ignore We know `newVNode.type` is a string\n\t\t\t\tnodeType\n\t\t\t);\n\t\t} else {\n\t\t\tdom = document.createElement(\n\t\t\t\t// @ts-ignore We know `newVNode.type` is a string\n\t\t\t\tnodeType,\n\t\t\t\tnewProps.is && newProps\n\t\t\t);\n\t\t}\n\n\t\t// we created a new parent, so none of the previously attached children can be reused:\n\t\texcessDomChildren = null;\n\t\t// we are creating a new node, so we can assume this is a new subtree (in case we are hydrating), this deopts the hydrate\n\t\tisHydrating = false;\n\t}\n\n\tif (nodeType === null) {\n\t\t// During hydration, we still have to split merged text from SSR'd HTML.\n\t\tif (oldProps !== newProps && (!isHydrating || dom.data !== newProps)) {\n\t\t\tdom.data = newProps;\n\t\t}\n\t} else {\n\t\t// If excessDomChildren was not null, repopulate it with the current element's children:\n\t\texcessDomChildren = excessDomChildren && slice.call(dom.childNodes);\n\n\t\toldProps = oldVNode.props || EMPTY_OBJ;\n\n\t\tlet oldHtml = oldProps.dangerouslySetInnerHTML;\n\t\tlet newHtml = newProps.dangerouslySetInnerHTML;\n\n\t\t// During hydration, props are not diffed at all (including dangerouslySetInnerHTML)\n\t\t// @TODO we should warn in debug mode when props don't match here.\n\t\tif (!isHydrating) {\n\t\t\t// But, if we are in a situation where we are using existing DOM (e.g. replaceNode)\n\t\t\t// we should read the existing DOM attributes to diff them\n\t\t\tif (excessDomChildren != null) {\n\t\t\t\toldProps = {};\n\t\t\t\tfor (i = 0; i < dom.attributes.length; i++) {\n\t\t\t\t\toldProps[dom.attributes[i].name] = dom.attributes[i].value;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (newHtml || oldHtml) {\n\t\t\t\t// Avoid re-applying the same '__html' if it did not changed between re-render\n\t\t\t\tif (\n\t\t\t\t\t!newHtml ||\n\t\t\t\t\t((!oldHtml || newHtml.__html != oldHtml.__html) &&\n\t\t\t\t\t\tnewHtml.__html !== dom.innerHTML)\n\t\t\t\t) {\n\t\t\t\t\tdom.innerHTML = (newHtml && newHtml.__html) || '';\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tdiffProps(dom, newProps, oldProps, isSvg, isHydrating);\n\n\t\t// If the new vnode didn't have dangerouslySetInnerHTML, diff its children\n\t\tif (newHtml) {\n\t\t\tnewVNode._children = [];\n\t\t} else {\n\t\t\ti = newVNode.props.children;\n\t\t\tdiffChildren(\n\t\t\t\tdom,\n\t\t\t\tArray.isArray(i) ? i : [i],\n\t\t\t\tnewVNode,\n\t\t\t\toldVNode,\n\t\t\t\tglobalContext,\n\t\t\t\tisSvg && nodeType !== 'foreignObject',\n\t\t\t\texcessDomChildren,\n\t\t\t\tcommitQueue,\n\t\t\t\texcessDomChildren\n\t\t\t\t\t? excessDomChildren[0]\n\t\t\t\t\t: oldVNode._children && getDomSibling(oldVNode, 0),\n\t\t\t\tisHydrating\n\t\t\t);\n\n\t\t\t// Remove children that are not part of any vnode.\n\t\t\tif (excessDomChildren != null) {\n\t\t\t\tfor (i = excessDomChildren.length; i--; ) {\n\t\t\t\t\tif (excessDomChildren[i] != null) removeNode(excessDomChildren[i]);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// (as above, don't diff props during hydration)\n\t\tif (!isHydrating) {\n\t\t\tif (\n\t\t\t\t'value' in newProps &&\n\t\t\t\t(i = newProps.value) !== undefined &&\n\t\t\t\t// #2756 For the |