fullcalendar 6.1.9 → 6.1.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.global.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- FullCalendar Standard Bundle v6.1.9
2
+ FullCalendar Standard Bundle v6.1.11
3
3
  Docs & License: https://fullcalendar.io/docs/initialize-globals
4
4
  (c) 2023 Adam Shaw
5
5
  */
@@ -21,7 +21,9 @@ var FullCalendar = (function (exports) {
21
21
  });
22
22
  }
23
23
  function ensureElHasStyles(el) {
24
- if (el.isConnected) {
24
+ if (el.isConnected && // sometimes true if SSR system simulates DOM
25
+ el.getRootNode // sometimes undefined if SSR system simulates DOM
26
+ ) {
25
27
  registerStylesRoot(el.getRootNode());
26
28
  }
27
29
  }
@@ -1484,6 +1486,7 @@ var FullCalendar = (function (exports) {
1484
1486
  // (can't be part of plugin system b/c must be provided at runtime)
1485
1487
  handleCustomRendering: identity,
1486
1488
  customRenderingMetaMap: identity,
1489
+ customRenderingReplaces: Boolean,
1487
1490
  };
1488
1491
  // do NOT give a type here. need `typeof BASE_OPTION_DEFAULTS` to give real results.
1489
1492
  // raw values.
@@ -2399,7 +2402,9 @@ var FullCalendar = (function (exports) {
2399
2402
  this.queuedDomNodes = [];
2400
2403
  this.currentDomNodes = [];
2401
2404
  this.handleEl = (el) => {
2402
- if (!hasCustomRenderingHandler(this.props.generatorName, this.context.options)) {
2405
+ const { options } = this.context;
2406
+ const { generatorName } = this.props;
2407
+ if (!options.customRenderingReplaces || !hasCustomRenderingHandler(generatorName, options)) {
2403
2408
  this.updateElRef(el);
2404
2409
  }
2405
2410
  };
@@ -2499,7 +2504,9 @@ var FullCalendar = (function (exports) {
2499
2504
  });
2500
2505
  // Util
2501
2506
  /*
2502
- Does UI-framework provide custom way of rendering?
2507
+ Does UI-framework provide custom way of rendering that does not use Preact VDOM
2508
+ AND does the calendar's options define custom rendering?
2509
+ AKA. Should we NOT render the default content?
2503
2510
  */
2504
2511
  function hasCustomRenderingHandler(generatorName, options) {
2505
2512
  var _a;
@@ -2535,6 +2542,9 @@ var FullCalendar = (function (exports) {
2535
2542
  this.el = el;
2536
2543
  if (this.props.elRef) {
2537
2544
  setRef(this.props.elRef, el);
2545
+ if (el && this.didMountMisfire) {
2546
+ this.componentDidMount();
2547
+ }
2538
2548
  }
2539
2549
  };
2540
2550
  }
@@ -2557,7 +2567,12 @@ var FullCalendar = (function (exports) {
2557
2567
  }
2558
2568
  componentDidMount() {
2559
2569
  var _a, _b;
2560
- (_b = (_a = this.props).didMount) === null || _b === void 0 ? void 0 : _b.call(_a, Object.assign(Object.assign({}, this.props.renderProps), { el: this.el }));
2570
+ if (this.el) {
2571
+ (_b = (_a = this.props).didMount) === null || _b === void 0 ? void 0 : _b.call(_a, Object.assign(Object.assign({}, this.props.renderProps), { el: this.el }));
2572
+ }
2573
+ else {
2574
+ this.didMountMisfire = true;
2575
+ }
2561
2576
  }
2562
2577
  componentWillUnmount() {
2563
2578
  var _a, _b;
@@ -4421,7 +4436,7 @@ var FullCalendar = (function (exports) {
4421
4436
  function getSegMeta(seg, todayRange, nowDate) {
4422
4437
  let segRange = seg.eventRange.range;
4423
4438
  return {
4424
- isPast: segRange.end < (nowDate || todayRange.start),
4439
+ isPast: segRange.end <= (nowDate || todayRange.start),
4425
4440
  isFuture: segRange.start >= (nowDate || todayRange.end),
4426
4441
  isToday: todayRange && rangeContainsMarker(todayRange, segRange.start),
4427
4442
  };
@@ -4684,10 +4699,14 @@ var FullCalendar = (function (exports) {
4684
4699
  forPrint: false,
4685
4700
  };
4686
4701
  this.handleBeforePrint = () => {
4687
- this.setState({ forPrint: true });
4702
+ flushSync(() => {
4703
+ this.setState({ forPrint: true });
4704
+ });
4688
4705
  };
4689
4706
  this.handleAfterPrint = () => {
4690
- this.setState({ forPrint: false });
4707
+ flushSync(() => {
4708
+ this.setState({ forPrint: false });
4709
+ });
4691
4710
  };
4692
4711
  }
4693
4712
  render() {
@@ -5746,8 +5765,8 @@ var FullCalendar = (function (exports) {
5746
5765
 
5747
5766
  class SegHierarchy {
5748
5767
  constructor(getEntryThickness = (entry) => {
5749
- // should return an integer
5750
- return entry.thickness;
5768
+ // if no thickness known, assume 1 (if 0, so small it always fits)
5769
+ return entry.thickness || 1;
5751
5770
  }) {
5752
5771
  this.getEntryThickness = getEntryThickness;
5753
5772
  // settings
@@ -5770,51 +5789,45 @@ var FullCalendar = (function (exports) {
5770
5789
  let insertion = this.findInsertion(entry);
5771
5790
  if (this.isInsertionValid(insertion, entry)) {
5772
5791
  this.insertEntryAt(entry, insertion);
5773
- return 1;
5774
5792
  }
5775
- return this.handleInvalidInsertion(insertion, entry, hiddenEntries);
5793
+ else {
5794
+ this.handleInvalidInsertion(insertion, entry, hiddenEntries);
5795
+ }
5776
5796
  }
5777
5797
  isInsertionValid(insertion, entry) {
5778
5798
  return (this.maxCoord === -1 || insertion.levelCoord + this.getEntryThickness(entry) <= this.maxCoord) &&
5779
5799
  (this.maxStackCnt === -1 || insertion.stackCnt < this.maxStackCnt);
5780
5800
  }
5781
- // returns number of new entries inserted
5782
5801
  handleInvalidInsertion(insertion, entry, hiddenEntries) {
5783
5802
  if (this.allowReslicing && insertion.touchingEntry) {
5784
- return this.splitEntry(entry, insertion.touchingEntry, hiddenEntries);
5803
+ const hiddenEntry = Object.assign(Object.assign({}, entry), { span: intersectSpans(entry.span, insertion.touchingEntry.span) });
5804
+ hiddenEntries.push(hiddenEntry);
5805
+ this.splitEntry(entry, insertion.touchingEntry, hiddenEntries);
5806
+ }
5807
+ else {
5808
+ hiddenEntries.push(entry);
5785
5809
  }
5786
- hiddenEntries.push(entry);
5787
- return 0;
5788
5810
  }
5811
+ /*
5812
+ Does NOT add what hit the `barrier` into hiddenEntries. Should already be done.
5813
+ */
5789
5814
  splitEntry(entry, barrier, hiddenEntries) {
5790
- let partCnt = 0;
5791
- let splitHiddenEntries = [];
5792
5815
  let entrySpan = entry.span;
5793
5816
  let barrierSpan = barrier.span;
5794
5817
  if (entrySpan.start < barrierSpan.start) {
5795
- partCnt += this.insertEntry({
5818
+ this.insertEntry({
5796
5819
  index: entry.index,
5797
5820
  thickness: entry.thickness,
5798
5821
  span: { start: entrySpan.start, end: barrierSpan.start },
5799
- }, splitHiddenEntries);
5822
+ }, hiddenEntries);
5800
5823
  }
5801
5824
  if (entrySpan.end > barrierSpan.end) {
5802
- partCnt += this.insertEntry({
5825
+ this.insertEntry({
5803
5826
  index: entry.index,
5804
5827
  thickness: entry.thickness,
5805
5828
  span: { start: barrierSpan.end, end: entrySpan.end },
5806
- }, splitHiddenEntries);
5807
- }
5808
- if (partCnt) {
5809
- hiddenEntries.push({
5810
- index: entry.index,
5811
- thickness: entry.thickness,
5812
- span: intersectSpans(barrierSpan, entrySpan), // guaranteed to intersect
5813
- }, ...splitHiddenEntries);
5814
- return partCnt;
5829
+ }, hiddenEntries);
5815
5830
  }
5816
- hiddenEntries.push(entry);
5817
- return 0;
5818
5831
  }
5819
5832
  insertEntryAt(entry, insertion) {
5820
5833
  let { entriesByLevel, levelCoords } = this;
@@ -5829,6 +5842,9 @@ var FullCalendar = (function (exports) {
5829
5842
  }
5830
5843
  this.stackCnts[buildEntryKey(entry)] = insertion.stackCnt;
5831
5844
  }
5845
+ /*
5846
+ does not care about limits
5847
+ */
5832
5848
  findInsertion(newEntry) {
5833
5849
  let { levelCoords, entriesByLevel, strictOrder, stackCnts } = this;
5834
5850
  let levelCnt = levelCoords.length;
@@ -5838,7 +5854,7 @@ var FullCalendar = (function (exports) {
5838
5854
  let touchingEntry = null;
5839
5855
  let stackCnt = 0;
5840
5856
  for (let trackingLevel = 0; trackingLevel < levelCnt; trackingLevel += 1) {
5841
- let trackingCoord = levelCoords[trackingLevel];
5857
+ const trackingCoord = levelCoords[trackingLevel];
5842
5858
  // if the current level is past the placed entry, we have found a good empty space and can stop.
5843
5859
  // if strictOrder, keep finding more lateral intersections.
5844
5860
  if (!strictOrder && trackingCoord >= candidateCoord + this.getEntryThickness(newEntry)) {
@@ -9329,7 +9345,7 @@ var FullCalendar = (function (exports) {
9329
9345
  if (isPressed) {
9330
9346
  buttonClasses.push(theme.getClass('buttonActive'));
9331
9347
  }
9332
- children.push(y("button", { type: "button", title: typeof buttonHint === 'function' ? buttonHint(props.navUnit) : buttonHint, disabled: isDisabled, "aria-pressed": isPressed, className: buttonClasses.join(' '), onClick: buttonClick }, buttonText || (buttonIcon ? y("span", { className: buttonIcon }) : '')));
9348
+ children.push(y("button", { type: "button", title: typeof buttonHint === 'function' ? buttonHint(props.navUnit) : buttonHint, disabled: isDisabled, "aria-pressed": isPressed, className: buttonClasses.join(' '), onClick: buttonClick }, buttonText || (buttonIcon ? y("span", { className: buttonIcon, role: "img" }) : '')));
9333
9349
  }
9334
9350
  }
9335
9351
  if (children.length > 1) {
@@ -9591,7 +9607,7 @@ var FullCalendar = (function (exports) {
9591
9607
  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);
9592
9608
  let viewLabelId = (toolbarConfig.header && toolbarConfig.header.hasTitle)
9593
9609
  ? this.state.viewLabelId
9594
- : '';
9610
+ : undefined;
9595
9611
  return (y(ViewContextType.Provider, { value: viewContext },
9596
9612
  toolbarConfig.header && (y(Toolbar, Object.assign({ ref: this.headerRef, extraClassName: "fc-header-toolbar", model: toolbarConfig.header, titleId: viewLabelId }, toolbarProps))),
9597
9613
  y(ViewHarness, { liquid: viewVGrow, height: viewHeight, aspectRatio: viewAspectRatio, labeledById: viewLabelId },
@@ -9819,7 +9835,7 @@ var FullCalendar = (function (exports) {
9819
9835
  return sliceEventStore(props.eventStore, props.eventUiBases, props.dateProfile.activeRange, allDay ? props.nextDayThreshold : null).fg;
9820
9836
  }
9821
9837
 
9822
- const version = '6.1.9';
9838
+ const version = '6.1.11';
9823
9839
 
9824
9840
  config.touchMouseIgnoreWait = 500;
9825
9841
  let ignoreMouseDepth = 0;
@@ -11917,8 +11933,86 @@ var FullCalendar = (function (exports) {
11917
11933
  listenerRefiners: LISTENER_REFINERS,
11918
11934
  });
11919
11935
 
11920
- var css_248z$3 = ":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-month-start{font-size:1.1em;font-weight:700}.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;margin:0 2px}.fc .fc-daygrid-day-bottom:after,.fc .fc-daygrid-day-bottom:before{clear:both;content:\"\";display:table}.fc .fc-daygrid-more-link{border-radius:3px;cursor:pointer;line-height:1;margin-top:1px;max-width:100%;overflow:hidden;padding:2px;position:relative;white-space:nowrap;z-index:4}.fc .fc-daygrid-more-link:hover{background-color:rgba(0,0,0,.1)}.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-more-link{float:left}.fc-direction-ltr .fc-daygrid-week-number{border-radius:0 0 3px 0;left:0}.fc-direction-rtl .fc-daygrid-more-link{float:right}.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}";
11921
- injectStyles(css_248z$3);
11936
+ /* An abstract class for the daygrid views, as well as month view. Renders one or more rows of day cells.
11937
+ ----------------------------------------------------------------------------------------------------------------------*/
11938
+ // It is a manager for a Table subcomponent, which does most of the heavy lifting.
11939
+ // It is responsible for managing width/height.
11940
+ class TableView extends DateComponent {
11941
+ constructor() {
11942
+ super(...arguments);
11943
+ this.headerElRef = d();
11944
+ }
11945
+ renderSimpleLayout(headerRowContent, bodyContent) {
11946
+ let { props, context } = this;
11947
+ let sections = [];
11948
+ let stickyHeaderDates = getStickyHeaderDates(context.options);
11949
+ if (headerRowContent) {
11950
+ sections.push({
11951
+ type: 'header',
11952
+ key: 'header',
11953
+ isSticky: stickyHeaderDates,
11954
+ chunk: {
11955
+ elRef: this.headerElRef,
11956
+ tableClassName: 'fc-col-header',
11957
+ rowContent: headerRowContent,
11958
+ },
11959
+ });
11960
+ }
11961
+ sections.push({
11962
+ type: 'body',
11963
+ key: 'body',
11964
+ liquid: true,
11965
+ chunk: { content: bodyContent },
11966
+ });
11967
+ return (y(ViewContainer, { elClasses: ['fc-daygrid'], viewSpec: context.viewSpec },
11968
+ y(SimpleScrollGrid, { liquid: !props.isHeightAuto && !props.forPrint, collapsibleWidth: props.forPrint, cols: [] /* TODO: make optional? */, sections: sections })));
11969
+ }
11970
+ renderHScrollLayout(headerRowContent, bodyContent, colCnt, dayMinWidth) {
11971
+ let ScrollGrid = this.context.pluginHooks.scrollGridImpl;
11972
+ if (!ScrollGrid) {
11973
+ throw new Error('No ScrollGrid implementation');
11974
+ }
11975
+ let { props, context } = this;
11976
+ let stickyHeaderDates = !props.forPrint && getStickyHeaderDates(context.options);
11977
+ let stickyFooterScrollbar = !props.forPrint && getStickyFooterScrollbar(context.options);
11978
+ let sections = [];
11979
+ if (headerRowContent) {
11980
+ sections.push({
11981
+ type: 'header',
11982
+ key: 'header',
11983
+ isSticky: stickyHeaderDates,
11984
+ chunks: [{
11985
+ key: 'main',
11986
+ elRef: this.headerElRef,
11987
+ tableClassName: 'fc-col-header',
11988
+ rowContent: headerRowContent,
11989
+ }],
11990
+ });
11991
+ }
11992
+ sections.push({
11993
+ type: 'body',
11994
+ key: 'body',
11995
+ liquid: true,
11996
+ chunks: [{
11997
+ key: 'main',
11998
+ content: bodyContent,
11999
+ }],
12000
+ });
12001
+ if (stickyFooterScrollbar) {
12002
+ sections.push({
12003
+ type: 'footer',
12004
+ key: 'footer',
12005
+ isSticky: true,
12006
+ chunks: [{
12007
+ key: 'main',
12008
+ content: renderScrollShim,
12009
+ }],
12010
+ });
12011
+ }
12012
+ return (y(ViewContainer, { elClasses: ['fc-daygrid'], viewSpec: context.viewSpec },
12013
+ y(ScrollGrid, { liquid: !props.isHeightAuto && !props.forPrint, forPrint: props.forPrint, collapsibleWidth: props.forPrint, colGroups: [{ cols: [{ span: colCnt, minWidth: dayMinWidth }] }], sections: sections })));
12014
+ }
12015
+ }
11922
12016
 
11923
12017
  function splitSegsByRow(segs, rowCnt) {
11924
12018
  let byRow = [];
@@ -12108,7 +12202,8 @@ var FullCalendar = (function (exports) {
12108
12202
  let segUid = segs[segEntry.index].eventRange.instance.instanceId +
12109
12203
  ':' + segEntry.span.start +
12110
12204
  ':' + (segEntry.span.end - 1);
12111
- return segHeights[segUid];
12205
+ // if no thickness known, assume 1 (if 0, so small it always fits)
12206
+ return segHeights[segUid] || 1;
12112
12207
  });
12113
12208
  hierarchy.allowReslicing = true;
12114
12209
  hierarchy.strictOrder = strictOrder;
@@ -12310,16 +12405,20 @@ var FullCalendar = (function (exports) {
12310
12405
  handleInvalidInsertion(insertion, entry, hiddenEntries) {
12311
12406
  const { entriesByLevel, forceHidden } = this;
12312
12407
  const { touchingEntry, touchingLevel, touchingLateral } = insertion;
12408
+ // the entry that the new insertion is touching must be hidden
12313
12409
  if (this.hiddenConsumes && touchingEntry) {
12314
12410
  const touchingEntryId = buildEntryKey(touchingEntry);
12315
- // if not already hidden
12316
12411
  if (!forceHidden[touchingEntryId]) {
12317
12412
  if (this.allowReslicing) {
12318
- const placeholderEntry = Object.assign(Object.assign({}, touchingEntry), { span: intersectSpans(touchingEntry.span, entry.span) });
12319
- const placeholderEntryId = buildEntryKey(placeholderEntry);
12320
- forceHidden[placeholderEntryId] = true;
12321
- entriesByLevel[touchingLevel][touchingLateral] = placeholderEntry; // replace touchingEntry with our placeholder
12322
- this.splitEntry(touchingEntry, entry, hiddenEntries); // split up the touchingEntry, reinsert it
12413
+ // split up the touchingEntry, reinsert it
12414
+ const hiddenEntry = Object.assign(Object.assign({}, touchingEntry), { span: intersectSpans(touchingEntry.span, entry.span) });
12415
+ // reinsert the area that turned into a "more" link (so no other entries try to
12416
+ // occupy the space) but mark it forced-hidden
12417
+ const hiddenEntryId = buildEntryKey(hiddenEntry);
12418
+ forceHidden[hiddenEntryId] = true;
12419
+ entriesByLevel[touchingLevel][touchingLateral] = hiddenEntry;
12420
+ hiddenEntries.push(hiddenEntry);
12421
+ this.splitEntry(touchingEntry, entry, hiddenEntries);
12323
12422
  }
12324
12423
  else {
12325
12424
  forceHidden[touchingEntryId] = true;
@@ -12327,7 +12426,8 @@ var FullCalendar = (function (exports) {
12327
12426
  }
12328
12427
  }
12329
12428
  }
12330
- return super.handleInvalidInsertion(insertion, entry, hiddenEntries);
12429
+ // will try to reslice...
12430
+ super.handleInvalidInsertion(insertion, entry, hiddenEntries);
12331
12431
  }
12332
12432
  }
12333
12433
 
@@ -12749,6 +12849,30 @@ var FullCalendar = (function (exports) {
12749
12849
  }
12750
12850
  }
12751
12851
 
12852
+ class DayTableView extends TableView {
12853
+ constructor() {
12854
+ super(...arguments);
12855
+ this.buildDayTableModel = memoize(buildDayTableModel);
12856
+ this.headerRef = d();
12857
+ this.tableRef = d();
12858
+ // can't override any lifecycle methods from parent
12859
+ }
12860
+ render() {
12861
+ let { options, dateProfileGenerator } = this.context;
12862
+ let { props } = this;
12863
+ let dayTableModel = this.buildDayTableModel(props.dateProfile, dateProfileGenerator);
12864
+ let headerContent = options.dayHeaders && (y(DayHeader, { ref: this.headerRef, dateProfile: props.dateProfile, dates: dayTableModel.headerDates, datesRepDistinctDays: dayTableModel.rowCnt === 1 }));
12865
+ let bodyContent = (contentArg) => (y(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 }));
12866
+ return options.dayMinWidth
12867
+ ? this.renderHScrollLayout(headerContent, bodyContent, dayTableModel.colCnt, options.dayMinWidth)
12868
+ : this.renderSimpleLayout(headerContent, bodyContent);
12869
+ }
12870
+ }
12871
+ function buildDayTableModel(dateProfile, dateProfileGenerator) {
12872
+ let daySeries = new DaySeriesModel(dateProfile.renderRange, dateProfileGenerator);
12873
+ return new DayTableModel(daySeries, /year|month|week/.test(dateProfile.currentRangeUnit));
12874
+ }
12875
+
12752
12876
  class TableDateProfileGenerator extends DateProfileGenerator {
12753
12877
  // Computes the date range that will be rendered
12754
12878
  buildRenderRange(currentRange, currentRangeUnit, isRangeAllDay) {
@@ -12787,110 +12911,8 @@ var FullCalendar = (function (exports) {
12787
12911
  return { start, end };
12788
12912
  }
12789
12913
 
12790
- /* An abstract class for the daygrid views, as well as month view. Renders one or more rows of day cells.
12791
- ----------------------------------------------------------------------------------------------------------------------*/
12792
- // It is a manager for a Table subcomponent, which does most of the heavy lifting.
12793
- // It is responsible for managing width/height.
12794
- class TableView extends DateComponent {
12795
- constructor() {
12796
- super(...arguments);
12797
- this.headerElRef = d();
12798
- }
12799
- renderSimpleLayout(headerRowContent, bodyContent) {
12800
- let { props, context } = this;
12801
- let sections = [];
12802
- let stickyHeaderDates = getStickyHeaderDates(context.options);
12803
- if (headerRowContent) {
12804
- sections.push({
12805
- type: 'header',
12806
- key: 'header',
12807
- isSticky: stickyHeaderDates,
12808
- chunk: {
12809
- elRef: this.headerElRef,
12810
- tableClassName: 'fc-col-header',
12811
- rowContent: headerRowContent,
12812
- },
12813
- });
12814
- }
12815
- sections.push({
12816
- type: 'body',
12817
- key: 'body',
12818
- liquid: true,
12819
- chunk: { content: bodyContent },
12820
- });
12821
- return (y(ViewContainer, { elClasses: ['fc-daygrid'], viewSpec: context.viewSpec },
12822
- y(SimpleScrollGrid, { liquid: !props.isHeightAuto && !props.forPrint, collapsibleWidth: props.forPrint, cols: [] /* TODO: make optional? */, sections: sections })));
12823
- }
12824
- renderHScrollLayout(headerRowContent, bodyContent, colCnt, dayMinWidth) {
12825
- let ScrollGrid = this.context.pluginHooks.scrollGridImpl;
12826
- if (!ScrollGrid) {
12827
- throw new Error('No ScrollGrid implementation');
12828
- }
12829
- let { props, context } = this;
12830
- let stickyHeaderDates = !props.forPrint && getStickyHeaderDates(context.options);
12831
- let stickyFooterScrollbar = !props.forPrint && getStickyFooterScrollbar(context.options);
12832
- let sections = [];
12833
- if (headerRowContent) {
12834
- sections.push({
12835
- type: 'header',
12836
- key: 'header',
12837
- isSticky: stickyHeaderDates,
12838
- chunks: [{
12839
- key: 'main',
12840
- elRef: this.headerElRef,
12841
- tableClassName: 'fc-col-header',
12842
- rowContent: headerRowContent,
12843
- }],
12844
- });
12845
- }
12846
- sections.push({
12847
- type: 'body',
12848
- key: 'body',
12849
- liquid: true,
12850
- chunks: [{
12851
- key: 'main',
12852
- content: bodyContent,
12853
- }],
12854
- });
12855
- if (stickyFooterScrollbar) {
12856
- sections.push({
12857
- type: 'footer',
12858
- key: 'footer',
12859
- isSticky: true,
12860
- chunks: [{
12861
- key: 'main',
12862
- content: renderScrollShim,
12863
- }],
12864
- });
12865
- }
12866
- return (y(ViewContainer, { elClasses: ['fc-daygrid'], viewSpec: context.viewSpec },
12867
- y(ScrollGrid, { liquid: !props.isHeightAuto && !props.forPrint, forPrint: props.forPrint, collapsibleWidth: props.forPrint, colGroups: [{ cols: [{ span: colCnt, minWidth: dayMinWidth }] }], sections: sections })));
12868
- }
12869
- }
12870
-
12871
- class DayTableView extends TableView {
12872
- constructor() {
12873
- super(...arguments);
12874
- this.buildDayTableModel = memoize(buildDayTableModel);
12875
- this.headerRef = d();
12876
- this.tableRef = d();
12877
- // can't override any lifecycle methods from parent
12878
- }
12879
- render() {
12880
- let { options, dateProfileGenerator } = this.context;
12881
- let { props } = this;
12882
- let dayTableModel = this.buildDayTableModel(props.dateProfile, dateProfileGenerator);
12883
- let headerContent = options.dayHeaders && (y(DayHeader, { ref: this.headerRef, dateProfile: props.dateProfile, dates: dayTableModel.headerDates, datesRepDistinctDays: dayTableModel.rowCnt === 1 }));
12884
- let bodyContent = (contentArg) => (y(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 }));
12885
- return options.dayMinWidth
12886
- ? this.renderHScrollLayout(headerContent, bodyContent, dayTableModel.colCnt, options.dayMinWidth)
12887
- : this.renderSimpleLayout(headerContent, bodyContent);
12888
- }
12889
- }
12890
- function buildDayTableModel(dateProfile, dateProfileGenerator) {
12891
- let daySeries = new DaySeriesModel(dateProfile.renderRange, dateProfileGenerator);
12892
- return new DayTableModel(daySeries, /year|month|week/.test(dateProfile.currentRangeUnit));
12893
- }
12914
+ var css_248z$3 = ":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-month-start{font-size:1.1em;font-weight:700}.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;margin:0 2px}.fc .fc-daygrid-day-bottom:after,.fc .fc-daygrid-day-bottom:before{clear:both;content:\"\";display:table}.fc .fc-daygrid-more-link{border-radius:3px;cursor:pointer;line-height:1;margin-top:1px;max-width:100%;overflow:hidden;padding:2px;position:relative;white-space:nowrap;z-index:4}.fc .fc-daygrid-more-link:hover{background-color:rgba(0,0,0,.1)}.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-more-link{float:left}.fc-direction-ltr .fc-daygrid-week-number{border-radius:0 0 3px 0;left:0}.fc-direction-rtl .fc-daygrid-more-link{float:right}.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}";
12915
+ injectStyles(css_248z$3);
12894
12916
 
12895
12917
  var index$3 = createPlugin({
12896
12918
  name: '@fullcalendar/daygrid',
@@ -12920,9 +12942,6 @@ var FullCalendar = (function (exports) {
12920
12942
  },
12921
12943
  });
12922
12944
 
12923
- var css_248z$2 = ".fc-v-event{background-color:var(--fc-event-bg-color);border:1px solid var(--fc-event-border-color);display:block}.fc-v-event .fc-event-main{color:var(--fc-event-text-color);height:100%}.fc-v-event .fc-event-main-frame{display:flex;flex-direction:column;height:100%}.fc-v-event .fc-event-time{flex-grow:0;flex-shrink:0;max-height:100%;overflow:hidden}.fc-v-event .fc-event-title-container{flex-grow:1;flex-shrink:1;min-height:0}.fc-v-event .fc-event-title{bottom:0;max-height:100%;overflow:hidden;top:0}.fc-v-event:not(.fc-event-start){border-top-left-radius:0;border-top-right-radius:0;border-top-width:0}.fc-v-event:not(.fc-event-end){border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom-width:0}.fc-v-event.fc-event-selected:before{left:-10px;right:-10px}.fc-v-event .fc-event-resizer-start{cursor:n-resize}.fc-v-event .fc-event-resizer-end{cursor:s-resize}.fc-v-event:not(.fc-event-selected) .fc-event-resizer{height:var(--fc-event-resizer-thickness);left:0;right:0}.fc-v-event:not(.fc-event-selected) .fc-event-resizer-start{top:calc(var(--fc-event-resizer-thickness)/-2)}.fc-v-event:not(.fc-event-selected) .fc-event-resizer-end{bottom:calc(var(--fc-event-resizer-thickness)/-2)}.fc-v-event.fc-event-selected .fc-event-resizer{left:50%;margin-left:calc(var(--fc-event-resizer-dot-total-width)/-2)}.fc-v-event.fc-event-selected .fc-event-resizer-start{top:calc(var(--fc-event-resizer-dot-total-width)/-2)}.fc-v-event.fc-event-selected .fc-event-resizer-end{bottom:calc(var(--fc-event-resizer-dot-total-width)/-2)}.fc .fc-timegrid .fc-daygrid-body{z-index:2}.fc .fc-timegrid-divider{padding:0 0 2px}.fc .fc-timegrid-body{min-height:100%;position:relative;z-index:1}.fc .fc-timegrid-axis-chunk{position:relative}.fc .fc-timegrid-axis-chunk>table,.fc .fc-timegrid-slots{position:relative;z-index:1}.fc .fc-timegrid-slot{border-bottom:0;height:1.5em}.fc .fc-timegrid-slot:empty:before{content:\"\\00a0\"}.fc .fc-timegrid-slot-minor{border-top-style:dotted}.fc .fc-timegrid-slot-label-cushion{display:inline-block;white-space:nowrap}.fc .fc-timegrid-slot-label{vertical-align:middle}.fc .fc-timegrid-axis-cushion,.fc .fc-timegrid-slot-label-cushion{padding:0 4px}.fc .fc-timegrid-axis-frame-liquid{height:100%}.fc .fc-timegrid-axis-frame{align-items:center;display:flex;justify-content:flex-end;overflow:hidden}.fc .fc-timegrid-axis-cushion{flex-shrink:0;max-width:60px}.fc-direction-ltr .fc-timegrid-slot-label-frame{text-align:right}.fc-direction-rtl .fc-timegrid-slot-label-frame{text-align:left}.fc-liquid-hack .fc-timegrid-axis-frame-liquid{bottom:0;height:auto;left:0;position:absolute;right:0;top:0}.fc .fc-timegrid-col.fc-day-today{background-color:var(--fc-today-bg-color)}.fc .fc-timegrid-col-frame{min-height:100%;position:relative}.fc-media-screen.fc-liquid-hack .fc-timegrid-col-frame{bottom:0;height:auto;left:0;position:absolute;right:0;top:0}.fc-media-screen .fc-timegrid-cols{bottom:0;left:0;position:absolute;right:0;top:0}.fc-media-screen .fc-timegrid-cols>table{height:100%}.fc-media-screen .fc-timegrid-col-bg,.fc-media-screen .fc-timegrid-col-events,.fc-media-screen .fc-timegrid-now-indicator-container{left:0;position:absolute;right:0;top:0}.fc .fc-timegrid-col-bg{z-index:2}.fc .fc-timegrid-col-bg .fc-non-business{z-index:1}.fc .fc-timegrid-col-bg .fc-bg-event{z-index:2}.fc .fc-timegrid-col-bg .fc-highlight{z-index:3}.fc .fc-timegrid-bg-harness{left:0;position:absolute;right:0}.fc .fc-timegrid-col-events{z-index:3}.fc .fc-timegrid-now-indicator-container{bottom:0;overflow:hidden}.fc-direction-ltr .fc-timegrid-col-events{margin:0 2.5% 0 2px}.fc-direction-rtl .fc-timegrid-col-events{margin:0 2px 0 2.5%}.fc-timegrid-event-harness{position:absolute}.fc-timegrid-event-harness>.fc-timegrid-event{bottom:0;left:0;position:absolute;right:0;top:0}.fc-timegrid-event-harness-inset .fc-timegrid-event,.fc-timegrid-event.fc-event-mirror,.fc-timegrid-more-link{box-shadow:0 0 0 1px var(--fc-page-bg-color)}.fc-timegrid-event,.fc-timegrid-more-link{border-radius:3px;font-size:var(--fc-small-font-size)}.fc-timegrid-event{margin-bottom:1px}.fc-timegrid-event .fc-event-main{padding:1px 1px 0}.fc-timegrid-event .fc-event-time{font-size:var(--fc-small-font-size);margin-bottom:1px;white-space:nowrap}.fc-timegrid-event-short .fc-event-main-frame{flex-direction:row;overflow:hidden}.fc-timegrid-event-short .fc-event-time:after{content:\"\\00a0-\\00a0\"}.fc-timegrid-event-short .fc-event-title{font-size:var(--fc-small-font-size)}.fc-timegrid-more-link{background:var(--fc-more-link-bg-color);color:var(--fc-more-link-text-color);cursor:pointer;margin-bottom:1px;position:absolute;z-index:9999}.fc-timegrid-more-link-inner{padding:3px 2px;top:0}.fc-direction-ltr .fc-timegrid-more-link{right:0}.fc-direction-rtl .fc-timegrid-more-link{left:0}.fc .fc-timegrid-now-indicator-line{border-color:var(--fc-now-indicator-color);border-style:solid;border-width:1px 0 0;left:0;position:absolute;right:0;z-index:4}.fc .fc-timegrid-now-indicator-arrow{border-color:var(--fc-now-indicator-color);border-style:solid;margin-top:-5px;position:absolute;z-index:4}.fc-direction-ltr .fc-timegrid-now-indicator-arrow{border-bottom-color:transparent;border-top-color:transparent;border-width:5px 0 5px 6px;left:0}.fc-direction-rtl .fc-timegrid-now-indicator-arrow{border-bottom-color:transparent;border-top-color:transparent;border-width:5px 6px 5px 0;right:0}";
12924
- injectStyles(css_248z$2);
12925
-
12926
12945
  class AllDaySplitter extends Splitter {
12927
12946
  getKeyInfo() {
12928
12947
  return {
@@ -14060,6 +14079,9 @@ var FullCalendar = (function (exports) {
14060
14079
  return new DayTableModel(daySeries, false);
14061
14080
  }
14062
14081
 
14082
+ var css_248z$2 = ".fc-v-event{background-color:var(--fc-event-bg-color);border:1px solid var(--fc-event-border-color);display:block}.fc-v-event .fc-event-main{color:var(--fc-event-text-color);height:100%}.fc-v-event .fc-event-main-frame{display:flex;flex-direction:column;height:100%}.fc-v-event .fc-event-time{flex-grow:0;flex-shrink:0;max-height:100%;overflow:hidden}.fc-v-event .fc-event-title-container{flex-grow:1;flex-shrink:1;min-height:0}.fc-v-event .fc-event-title{bottom:0;max-height:100%;overflow:hidden;top:0}.fc-v-event:not(.fc-event-start){border-top-left-radius:0;border-top-right-radius:0;border-top-width:0}.fc-v-event:not(.fc-event-end){border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom-width:0}.fc-v-event.fc-event-selected:before{left:-10px;right:-10px}.fc-v-event .fc-event-resizer-start{cursor:n-resize}.fc-v-event .fc-event-resizer-end{cursor:s-resize}.fc-v-event:not(.fc-event-selected) .fc-event-resizer{height:var(--fc-event-resizer-thickness);left:0;right:0}.fc-v-event:not(.fc-event-selected) .fc-event-resizer-start{top:calc(var(--fc-event-resizer-thickness)/-2)}.fc-v-event:not(.fc-event-selected) .fc-event-resizer-end{bottom:calc(var(--fc-event-resizer-thickness)/-2)}.fc-v-event.fc-event-selected .fc-event-resizer{left:50%;margin-left:calc(var(--fc-event-resizer-dot-total-width)/-2)}.fc-v-event.fc-event-selected .fc-event-resizer-start{top:calc(var(--fc-event-resizer-dot-total-width)/-2)}.fc-v-event.fc-event-selected .fc-event-resizer-end{bottom:calc(var(--fc-event-resizer-dot-total-width)/-2)}.fc .fc-timegrid .fc-daygrid-body{z-index:2}.fc .fc-timegrid-divider{padding:0 0 2px}.fc .fc-timegrid-body{min-height:100%;position:relative;z-index:1}.fc .fc-timegrid-axis-chunk{position:relative}.fc .fc-timegrid-axis-chunk>table,.fc .fc-timegrid-slots{position:relative;z-index:1}.fc .fc-timegrid-slot{border-bottom:0;height:1.5em}.fc .fc-timegrid-slot:empty:before{content:\"\\00a0\"}.fc .fc-timegrid-slot-minor{border-top-style:dotted}.fc .fc-timegrid-slot-label-cushion{display:inline-block;white-space:nowrap}.fc .fc-timegrid-slot-label{vertical-align:middle}.fc .fc-timegrid-axis-cushion,.fc .fc-timegrid-slot-label-cushion{padding:0 4px}.fc .fc-timegrid-axis-frame-liquid{height:100%}.fc .fc-timegrid-axis-frame{align-items:center;display:flex;justify-content:flex-end;overflow:hidden}.fc .fc-timegrid-axis-cushion{flex-shrink:0;max-width:60px}.fc-direction-ltr .fc-timegrid-slot-label-frame{text-align:right}.fc-direction-rtl .fc-timegrid-slot-label-frame{text-align:left}.fc-liquid-hack .fc-timegrid-axis-frame-liquid{bottom:0;height:auto;left:0;position:absolute;right:0;top:0}.fc .fc-timegrid-col.fc-day-today{background-color:var(--fc-today-bg-color)}.fc .fc-timegrid-col-frame{min-height:100%;position:relative}.fc-media-screen.fc-liquid-hack .fc-timegrid-col-frame{bottom:0;height:auto;left:0;position:absolute;right:0;top:0}.fc-media-screen .fc-timegrid-cols{bottom:0;left:0;position:absolute;right:0;top:0}.fc-media-screen .fc-timegrid-cols>table{height:100%}.fc-media-screen .fc-timegrid-col-bg,.fc-media-screen .fc-timegrid-col-events,.fc-media-screen .fc-timegrid-now-indicator-container{left:0;position:absolute;right:0;top:0}.fc .fc-timegrid-col-bg{z-index:2}.fc .fc-timegrid-col-bg .fc-non-business{z-index:1}.fc .fc-timegrid-col-bg .fc-bg-event{z-index:2}.fc .fc-timegrid-col-bg .fc-highlight{z-index:3}.fc .fc-timegrid-bg-harness{left:0;position:absolute;right:0}.fc .fc-timegrid-col-events{z-index:3}.fc .fc-timegrid-now-indicator-container{bottom:0;overflow:hidden}.fc-direction-ltr .fc-timegrid-col-events{margin:0 2.5% 0 2px}.fc-direction-rtl .fc-timegrid-col-events{margin:0 2px 0 2.5%}.fc-timegrid-event-harness{position:absolute}.fc-timegrid-event-harness>.fc-timegrid-event{bottom:0;left:0;position:absolute;right:0;top:0}.fc-timegrid-event-harness-inset .fc-timegrid-event,.fc-timegrid-event.fc-event-mirror,.fc-timegrid-more-link{box-shadow:0 0 0 1px var(--fc-page-bg-color)}.fc-timegrid-event,.fc-timegrid-more-link{border-radius:3px;font-size:var(--fc-small-font-size)}.fc-timegrid-event{margin-bottom:1px}.fc-timegrid-event .fc-event-main{padding:1px 1px 0}.fc-timegrid-event .fc-event-time{font-size:var(--fc-small-font-size);margin-bottom:1px;white-space:nowrap}.fc-timegrid-event-short .fc-event-main-frame{flex-direction:row;overflow:hidden}.fc-timegrid-event-short .fc-event-time:after{content:\"\\00a0-\\00a0\"}.fc-timegrid-event-short .fc-event-title{font-size:var(--fc-small-font-size)}.fc-timegrid-more-link{background:var(--fc-more-link-bg-color);color:var(--fc-more-link-text-color);cursor:pointer;margin-bottom:1px;position:absolute;z-index:9999}.fc-timegrid-more-link-inner{padding:3px 2px;top:0}.fc-direction-ltr .fc-timegrid-more-link{right:0}.fc-direction-rtl .fc-timegrid-more-link{left:0}.fc .fc-timegrid-now-indicator-line{border-color:var(--fc-now-indicator-color);border-style:solid;border-width:1px 0 0;left:0;position:absolute;right:0;z-index:4}.fc .fc-timegrid-now-indicator-arrow{border-color:var(--fc-now-indicator-color);border-style:solid;margin-top:-5px;position:absolute;z-index:4}.fc-direction-ltr .fc-timegrid-now-indicator-arrow{border-bottom-color:transparent;border-top-color:transparent;border-width:5px 0 5px 6px;left:0}.fc-direction-rtl .fc-timegrid-now-indicator-arrow{border-bottom-color:transparent;border-top-color:transparent;border-width:5px 6px 5px 0;right:0}";
14083
+ injectStyles(css_248z$2);
14084
+
14063
14085
  const OPTION_REFINERS$2 = {
14064
14086
  allDaySlot: Boolean,
14065
14087
  };