@fullcalendar/core 7.0.0-beta.0 → 7.0.0-beta.3

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.
Files changed (175) hide show
  1. package/index.cjs +25 -42
  2. package/index.d.ts +0 -1
  3. package/index.global.js +1509 -1352
  4. package/index.global.min.js +2 -2
  5. package/index.js +26 -43
  6. package/internal-common.cjs +4139 -3965
  7. package/internal-common.d.ts +188 -165
  8. package/internal-common.js +4123 -3944
  9. package/internal.cjs +14 -20
  10. package/internal.d.ts +1 -2
  11. package/internal.js +1 -1
  12. package/locales/af.global.js +1 -1
  13. package/locales/af.global.min.js +1 -1
  14. package/locales/ar-dz.global.js +1 -1
  15. package/locales/ar-dz.global.min.js +1 -1
  16. package/locales/ar-kw.global.js +1 -1
  17. package/locales/ar-kw.global.min.js +1 -1
  18. package/locales/ar-ly.global.js +1 -1
  19. package/locales/ar-ly.global.min.js +1 -1
  20. package/locales/ar-ma.global.js +1 -1
  21. package/locales/ar-ma.global.min.js +1 -1
  22. package/locales/ar-sa.global.js +1 -1
  23. package/locales/ar-sa.global.min.js +1 -1
  24. package/locales/ar-tn.global.js +1 -1
  25. package/locales/ar-tn.global.min.js +1 -1
  26. package/locales/ar.global.js +1 -1
  27. package/locales/ar.global.min.js +1 -1
  28. package/locales/az.global.js +1 -1
  29. package/locales/az.global.min.js +1 -1
  30. package/locales/bg.global.js +1 -1
  31. package/locales/bg.global.min.js +1 -1
  32. package/locales/bn.global.js +1 -1
  33. package/locales/bn.global.min.js +1 -1
  34. package/locales/bs.global.js +1 -1
  35. package/locales/bs.global.min.js +1 -1
  36. package/locales/ca.global.js +1 -1
  37. package/locales/ca.global.min.js +1 -1
  38. package/locales/cs.global.js +1 -1
  39. package/locales/cs.global.min.js +1 -1
  40. package/locales/cy.global.js +1 -1
  41. package/locales/cy.global.min.js +1 -1
  42. package/locales/da.global.js +1 -1
  43. package/locales/da.global.min.js +1 -1
  44. package/locales/de-at.global.js +1 -1
  45. package/locales/de-at.global.min.js +1 -1
  46. package/locales/de.global.js +1 -1
  47. package/locales/de.global.min.js +1 -1
  48. package/locales/el.global.js +1 -1
  49. package/locales/el.global.min.js +1 -1
  50. package/locales/en-au.global.js +1 -1
  51. package/locales/en-au.global.min.js +1 -1
  52. package/locales/en-gb.global.js +1 -1
  53. package/locales/en-gb.global.min.js +1 -1
  54. package/locales/en-nz.global.js +1 -1
  55. package/locales/en-nz.global.min.js +1 -1
  56. package/locales/eo.global.js +1 -1
  57. package/locales/eo.global.min.js +1 -1
  58. package/locales/es-us.global.js +1 -1
  59. package/locales/es-us.global.min.js +1 -1
  60. package/locales/es.global.js +1 -1
  61. package/locales/es.global.min.js +1 -1
  62. package/locales/et.global.js +1 -1
  63. package/locales/et.global.min.js +1 -1
  64. package/locales/eu.global.js +1 -1
  65. package/locales/eu.global.min.js +1 -1
  66. package/locales/fa.global.js +1 -1
  67. package/locales/fa.global.min.js +1 -1
  68. package/locales/fi.global.js +1 -1
  69. package/locales/fi.global.min.js +1 -1
  70. package/locales/fr-ca.global.js +1 -1
  71. package/locales/fr-ca.global.min.js +1 -1
  72. package/locales/fr-ch.global.js +1 -1
  73. package/locales/fr-ch.global.min.js +1 -1
  74. package/locales/fr.global.js +1 -1
  75. package/locales/fr.global.min.js +1 -1
  76. package/locales/gl.global.js +1 -1
  77. package/locales/gl.global.min.js +1 -1
  78. package/locales/he.global.js +1 -1
  79. package/locales/he.global.min.js +1 -1
  80. package/locales/hi.global.js +1 -1
  81. package/locales/hi.global.min.js +1 -1
  82. package/locales/hr.global.js +1 -1
  83. package/locales/hr.global.min.js +1 -1
  84. package/locales/hu.global.js +1 -1
  85. package/locales/hu.global.min.js +1 -1
  86. package/locales/hy-am.global.js +1 -1
  87. package/locales/hy-am.global.min.js +1 -1
  88. package/locales/id.global.js +1 -1
  89. package/locales/id.global.min.js +1 -1
  90. package/locales/is.global.js +1 -1
  91. package/locales/is.global.min.js +1 -1
  92. package/locales/it.global.js +1 -1
  93. package/locales/it.global.min.js +1 -1
  94. package/locales/ja.global.js +1 -1
  95. package/locales/ja.global.min.js +1 -1
  96. package/locales/ka.global.js +1 -1
  97. package/locales/ka.global.min.js +1 -1
  98. package/locales/kk.global.js +1 -1
  99. package/locales/kk.global.min.js +1 -1
  100. package/locales/km.global.js +1 -1
  101. package/locales/km.global.min.js +1 -1
  102. package/locales/ko.global.js +1 -1
  103. package/locales/ko.global.min.js +1 -1
  104. package/locales/ku.global.js +1 -1
  105. package/locales/ku.global.min.js +1 -1
  106. package/locales/lb.global.js +1 -1
  107. package/locales/lb.global.min.js +1 -1
  108. package/locales/lt.global.js +1 -1
  109. package/locales/lt.global.min.js +1 -1
  110. package/locales/lv.global.js +1 -1
  111. package/locales/lv.global.min.js +1 -1
  112. package/locales/mk.global.js +1 -1
  113. package/locales/mk.global.min.js +1 -1
  114. package/locales/ms.global.js +1 -1
  115. package/locales/ms.global.min.js +1 -1
  116. package/locales/nb.global.js +1 -1
  117. package/locales/nb.global.min.js +1 -1
  118. package/locales/ne.global.js +1 -1
  119. package/locales/ne.global.min.js +1 -1
  120. package/locales/nl.global.js +1 -1
  121. package/locales/nl.global.min.js +1 -1
  122. package/locales/nn.global.js +1 -1
  123. package/locales/nn.global.min.js +1 -1
  124. package/locales/pl.global.js +1 -1
  125. package/locales/pl.global.min.js +1 -1
  126. package/locales/pt-br.global.js +1 -1
  127. package/locales/pt-br.global.min.js +1 -1
  128. package/locales/pt.global.js +1 -1
  129. package/locales/pt.global.min.js +1 -1
  130. package/locales/ro.global.js +1 -1
  131. package/locales/ro.global.min.js +1 -1
  132. package/locales/ru.global.js +1 -1
  133. package/locales/ru.global.min.js +1 -1
  134. package/locales/si-lk.global.js +1 -1
  135. package/locales/si-lk.global.min.js +1 -1
  136. package/locales/sk.global.js +1 -1
  137. package/locales/sk.global.min.js +1 -1
  138. package/locales/sl.global.js +1 -1
  139. package/locales/sl.global.min.js +1 -1
  140. package/locales/sm.global.js +1 -1
  141. package/locales/sm.global.min.js +1 -1
  142. package/locales/sq.global.js +1 -1
  143. package/locales/sq.global.min.js +1 -1
  144. package/locales/sr-cyrl.global.js +1 -1
  145. package/locales/sr-cyrl.global.min.js +1 -1
  146. package/locales/sr.global.js +1 -1
  147. package/locales/sr.global.min.js +1 -1
  148. package/locales/sv.global.js +1 -1
  149. package/locales/sv.global.min.js +1 -1
  150. package/locales/ta-in.global.js +1 -1
  151. package/locales/ta-in.global.min.js +1 -1
  152. package/locales/th.global.js +1 -1
  153. package/locales/th.global.min.js +1 -1
  154. package/locales/tr.global.js +1 -1
  155. package/locales/tr.global.min.js +1 -1
  156. package/locales/ug.global.js +1 -1
  157. package/locales/ug.global.min.js +1 -1
  158. package/locales/uk.global.js +1 -1
  159. package/locales/uk.global.min.js +1 -1
  160. package/locales/uz-cy.global.js +1 -1
  161. package/locales/uz-cy.global.min.js +1 -1
  162. package/locales/uz.global.js +1 -1
  163. package/locales/uz.global.min.js +1 -1
  164. package/locales/vi.global.js +1 -1
  165. package/locales/vi.global.min.js +1 -1
  166. package/locales/zh-cn.global.js +1 -1
  167. package/locales/zh-cn.global.min.js +1 -1
  168. package/locales/zh-tw.global.js +1 -1
  169. package/locales/zh-tw.global.min.js +1 -1
  170. package/locales-all.global.js +1 -1
  171. package/locales-all.global.min.js +1 -1
  172. package/package.json +1 -1
  173. package/preact.cjs +1 -0
  174. package/preact.d.ts +9 -2
  175. package/preact.js +1 -1
@@ -1,7 +1,6 @@
1
1
  import * as preact from 'preact';
2
2
  import { ComponentChildren, ComponentType, Context, Ref, Component, JSX, ComponentChild, FunctionalComponent, createElement, RefObject } from './preact.js';
3
3
  import { ViewApi as ViewApi$1 } from './index.js';
4
- import { DateComponent as DateComponent$1, Dictionary as Dictionary$1 } from './internal.js';
5
4
 
6
5
  type DurationInput = DurationObjectInput | string | number;
7
6
  interface DurationObjectInput {
@@ -485,6 +484,8 @@ declare function sliceEvents(props: ViewProps & {
485
484
  }, allDay?: boolean): EventRenderRange[];
486
485
 
487
486
  type ClassNamesInput = string | string[];
487
+ type Falsy = false | null | undefined;
488
+ declare function joinClassNames(...args: (string | number | Falsy)[]): string;
488
489
  declare function parseClassNames(raw: ClassNamesInput): string[];
489
490
  declare function fracToCssDim(frac: number): string;
490
491
 
@@ -571,9 +572,9 @@ declare class Theme {
571
572
  iconOverridePrefix: string;
572
573
  constructor(calendarOptions: CalendarOptionsRefined);
573
574
  setIconOverride(iconOverrideHash: any): void;
574
- applyIconOverridePrefix(className: any): any;
575
- getClass(key: any): any;
576
- getIconClass(buttonName: any, isRtl?: boolean): string;
575
+ applyIconOverridePrefix(className: string): string;
576
+ getClassName(key: string): any;
577
+ getIconClass(buttonName: string, isRtl?: boolean): string;
577
578
  getCustomButtonIconClass(customButtonProps: any): string;
578
579
  }
579
580
  type ThemeClass = {
@@ -909,7 +910,6 @@ declare abstract class PureComponent<Props = Dictionary, State = Dictionary> ext
909
910
  stateEquality: EqualityFuncs<State>;
910
911
  debug: boolean;
911
912
  shouldComponentUpdate(nextProps: Props, nextState: State): boolean;
912
- safeSetState(newState: Partial<State>): void;
913
913
  }
914
914
  declare abstract class BaseComponent<Props = Dictionary, State = Dictionary> extends PureComponent<Props, State> {
915
915
  static contextType: any;
@@ -955,17 +955,9 @@ interface Hit {
955
955
  largeUnit?: string;
956
956
  }
957
957
 
958
- interface Seg {
959
- component?: DateComponent<any, any>;
960
- isStart: boolean;
961
- isEnd: boolean;
962
- eventRange?: EventRenderRange;
963
- [otherProp: string]: any;
964
- el?: never;
965
- }
966
- interface EventSegUiInteractionState {
958
+ interface EventSegUiInteractionState<S> {
967
959
  affectedInstances: EventInstanceHash;
968
- segs: Seg[];
960
+ segs: (S & EventRangeProps)[];
969
961
  isEvent: boolean;
970
962
  }
971
963
  declare abstract class DateComponent<Props = Dictionary, State = Dictionary> extends BaseComponent<Props, State> {
@@ -989,6 +981,7 @@ interface InteractionSettingsInput {
989
981
  el: HTMLElement;
990
982
  useEventCenter?: boolean;
991
983
  isHitComboAllowed?: (hit0: Hit, hit1: Hit) => boolean;
984
+ disableHits?: boolean;
992
985
  }
993
986
  interface InteractionSettings {
994
987
  component: DateComponent<any>;
@@ -1106,13 +1099,15 @@ interface ScrollerInterface {
1106
1099
  x?: number;
1107
1100
  y?: number;
1108
1101
  }): void;
1102
+ addScrollEndListener(handler: (x: number, y: number) => void): void;
1103
+ removeScrollEndListener(handler: (x: number, y: number) => void): void;
1109
1104
  }
1110
1105
 
1111
1106
  interface ScrollerSyncerClass {
1112
1107
  new (horizontal?: boolean): ScrollerSyncerInterface;
1113
1108
  }
1114
1109
  interface ScrollerSyncerInterface extends ScrollerInterface {
1115
- handleChildren(scrollers: ScrollerInterface[], isRtl: boolean): void;
1110
+ handleChildren(scrollers: ScrollerInterface[]): void;
1116
1111
  destroy(): void;
1117
1112
  }
1118
1113
 
@@ -1369,13 +1364,17 @@ interface EventRenderRange extends EventTuple {
1369
1364
  isStart: boolean;
1370
1365
  isEnd: boolean;
1371
1366
  }
1367
+ interface EventRangeProps {
1368
+ eventRange: EventRenderRange;
1369
+ }
1370
+ declare function getEventKey(seg: EventRangeProps): string;
1372
1371
  declare function sliceEventStore(eventStore: EventStore, eventUiBases: EventUiHash, framingRange: DateRange, nextDayThreshold?: Duration): {
1373
1372
  bg: EventRenderRange[];
1374
1373
  fg: EventRenderRange[];
1375
1374
  };
1376
1375
  declare function hasBgRendering(def: EventDef): boolean;
1377
- declare function getElSeg(el: HTMLElement): Seg | null;
1378
- declare function sortEventSegs(segs: any, eventOrderSpecs: OrderSpec<EventImpl>[]): Seg[];
1376
+ declare function getElEventRange(el: HTMLElement): EventRenderRange | null;
1377
+ declare function sortEventSegs<S extends EventRangeProps>(segs: S[], eventOrderSpecs: OrderSpec<EventImpl>[]): S[];
1379
1378
  interface EventContentArg {
1380
1379
  event: EventImpl;
1381
1380
  timeText: string;
@@ -1397,22 +1396,21 @@ interface EventContentArg {
1397
1396
  view: ViewApi;
1398
1397
  }
1399
1398
  type EventMountArg = MountArg<EventContentArg>;
1400
- declare function buildSegTimeText(seg: Seg, timeFormat: DateFormatter, context: ViewContext, defaultDisplayEventTime?: boolean, // defaults to true
1401
- defaultDisplayEventEnd?: boolean, // defaults to true
1402
- startOverride?: DateMarker, endOverride?: DateMarker): string;
1403
- declare function getSegMeta(seg: Seg, todayRange: DateRange, nowDate?: DateMarker): {
1399
+ declare function buildEventRangeTimeText(timeFormat: DateFormatter, eventRange: EventRenderRange, // timed/whole-day span
1400
+ slicedStart: DateMarker | undefined, // view-sliced timed/whole-day span
1401
+ slicedEnd: DateMarker | undefined, // view-sliced timed/whole-day span
1402
+ isStart: boolean, isEnd: boolean, context: ViewContext, defaultDisplayEventTime?: boolean, defaultDisplayEventEnd?: boolean): string;
1403
+ declare function getEventRangeMeta(eventRange: EventRenderRange, todayRange: DateRange, nowDate?: DateMarker): {
1404
1404
  isPast: boolean;
1405
1405
  isFuture: boolean;
1406
1406
  isToday: boolean;
1407
1407
  };
1408
1408
  declare function buildEventRangeKey(eventRange: EventRenderRange): string;
1409
- declare function getSegAnchorAttrs(seg: Seg, context: ViewContext): {
1409
+ declare function getEventRangeAnchorAttrs(eventRange: EventRenderRange, context: ViewContext): {
1410
1410
  tabIndex: number;
1411
1411
  onKeyDown(ev: KeyboardEvent): void;
1412
1412
  } | {
1413
1413
  href: string;
1414
- } | {
1415
- href?: undefined;
1416
1414
  };
1417
1415
 
1418
1416
  interface OpenDateSpanInput {
@@ -1479,13 +1477,13 @@ type ElAttrs = JSX.HTMLAttributes & JSX.SVGAttributes & {
1479
1477
  ref?: ElRef;
1480
1478
  } & Record<string, any>;
1481
1479
  interface ElAttrsProps {
1480
+ attrs?: ElAttrs;
1481
+ className?: string;
1482
+ style?: JSX.CSSProperties;
1482
1483
  elRef?: ElRef;
1483
- elClasses?: string[];
1484
- elStyle?: JSX.CSSProperties;
1485
- elAttrs?: ElAttrs;
1486
1484
  }
1487
1485
  interface ElProps extends ElAttrsProps {
1488
- elTag: string;
1486
+ tag: string;
1489
1487
  }
1490
1488
  interface ContentGeneratorProps<RenderProps> {
1491
1489
  renderProps: RenderProps;
@@ -1493,10 +1491,10 @@ interface ContentGeneratorProps<RenderProps> {
1493
1491
  customGenerator?: CustomContentGenerator<RenderProps>;
1494
1492
  defaultGenerator?: (renderProps: RenderProps) => ComponentChild;
1495
1493
  }
1496
- declare function buildElAttrs(props: ElAttrsProps, extraClassNames?: string[], elRef?: ElRef): ElAttrs;
1494
+ declare function buildElAttrs(props: ElAttrsProps, className?: string, elRef?: ElRef): ElAttrs;
1497
1495
 
1498
1496
  type ContentContainerProps<RenderProps> = ElAttrsProps & ContentGeneratorProps<RenderProps> & {
1499
- elTag?: string;
1497
+ tag?: string;
1500
1498
  classNameGenerator: ClassNamesGenerator<RenderProps> | undefined;
1501
1499
  didMount: ((renderProps: RenderProps & {
1502
1500
  el: HTMLElement;
@@ -1518,7 +1516,10 @@ declare class ContentContainer<RenderProps> extends Component<ContentContainerPr
1518
1516
  componentWillUnmount(): void;
1519
1517
  }
1520
1518
  type InnerContainerComponent = FunctionalComponent<ElProps>;
1521
- type InnerContainerFunc<RenderProps> = (InnerContainer: InnerContainerComponent, renderProps: RenderProps, elAttrs: ElAttrs) => ComponentChildren;
1519
+ type InnerContainerFunc<RenderProps> = (InnerContainer: InnerContainerComponent, renderProps: RenderProps, attrs: ElAttrs) => ComponentChildren;
1520
+ declare function renderText(renderProps: {
1521
+ text: string;
1522
+ }): ComponentChild;
1522
1523
 
1523
1524
  interface NowIndicatorContainerProps extends Partial<ElProps> {
1524
1525
  isAxis: boolean;
@@ -1550,11 +1551,11 @@ interface MoreLinkContainerProps extends Partial<ElProps> {
1550
1551
  dateProfile: DateProfile;
1551
1552
  todayRange: DateRange;
1552
1553
  allDayDate: DateMarker | null;
1553
- segs: Seg[];
1554
- hiddenSegs: Seg[];
1555
- extraDateSpan?: Dictionary;
1556
- alignmentElRef?: RefObject<HTMLElement>;
1557
- alignGridTop?: boolean;
1554
+ segs: EventRangeProps[];
1555
+ hiddenSegs: EventRangeProps[];
1556
+ dateSpanProps?: Dictionary;
1557
+ alignElRef?: RefObject<HTMLElement>;
1558
+ alignParentTop?: string;
1558
1559
  forceTimed?: boolean;
1559
1560
  popoverContent: () => ComponentChild;
1560
1561
  defaultGenerator?: (renderProps: MoreLinkContentArg) => ComponentChild;
@@ -1586,7 +1587,6 @@ declare class MoreLinkContainer extends BaseComponent<MoreLinkContainerProps, Mo
1586
1587
  handleClick: (ev: MouseEvent) => void;
1587
1588
  handlePopoverClose: () => void;
1588
1589
  }
1589
- declare function computeEarliestSegStart(segs: Seg[]): DateMarker;
1590
1590
 
1591
1591
  interface EventSegment {
1592
1592
  event: EventApi;
@@ -1616,8 +1616,8 @@ interface DateMeta {
1616
1616
  isFuture: boolean;
1617
1617
  }
1618
1618
  declare function getDateMeta(date: DateMarker, todayRange?: DateRange, nowDate?: DateMarker, dateProfile?: DateProfile): DateMeta;
1619
- declare function getDayClassNames(meta: DateMeta, theme: Theme): string[];
1620
- declare function getSlotClassNames(meta: DateMeta, theme: Theme): string[];
1619
+ declare function getDayClassName(meta: DateMeta): string;
1620
+ declare function getSlotClassName(meta: DateMeta): string;
1621
1621
 
1622
1622
  interface SlotLaneContentArg extends Partial<DateMeta> {
1623
1623
  time?: Duration;
@@ -1640,8 +1640,8 @@ interface AllDayContentArg {
1640
1640
  type AllDayMountArg = MountArg<AllDayContentArg>;
1641
1641
  interface DayHeaderContentArg extends DateMeta {
1642
1642
  date: Date;
1643
- view: ViewApi;
1644
1643
  text: string;
1644
+ view: ViewApi;
1645
1645
  [otherProp: string]: any;
1646
1646
  }
1647
1647
  type DayHeaderMountArg = MountArg<DayHeaderContentArg>;
@@ -1659,7 +1659,7 @@ interface DayCellContainerProps extends Partial<ElProps> {
1659
1659
  todayRange: DateRange;
1660
1660
  isMonthStart?: boolean;
1661
1661
  showDayNumber?: boolean;
1662
- extraRenderProps?: Dictionary;
1662
+ renderProps?: Dictionary;
1663
1663
  defaultGenerator?: (renderProps: DayCellContentArg) => ComponentChild;
1664
1664
  children?: InnerContainerFunc<DayCellContentArg>;
1665
1665
  }
@@ -1677,7 +1677,7 @@ interface DayCellRenderPropsInput {
1677
1677
  monthStartFormat: DateFormatter;
1678
1678
  isMonthStart: boolean;
1679
1679
  showDayNumber?: boolean;
1680
- extraRenderProps?: Dictionary;
1680
+ renderProps?: Dictionary;
1681
1681
  }
1682
1682
 
1683
1683
  interface ViewContainerProps extends Partial<ElProps> {
@@ -1955,6 +1955,7 @@ declare const BASE_OPTION_REFINERS: {
1955
1955
  dropAccept: Identity<string | ((this: CalendarApi, draggable: any) => boolean)>;
1956
1956
  eventOrder: typeof parseFieldSpecs;
1957
1957
  eventOrderStrict: BooleanConstructor;
1958
+ eventSlicing: BooleanConstructor;
1958
1959
  longPressDelay: NumberConstructor;
1959
1960
  eventDragMinDistance: NumberConstructor;
1960
1961
  expandRows: BooleanConstructor;
@@ -2196,14 +2197,7 @@ type Dictionary = Record<string, any>;
2196
2197
  type Identity<T = any> = (raw: T) => T;
2197
2198
  declare function identity<T>(raw: T): T;
2198
2199
 
2199
- declare class JsonRequestError extends Error {
2200
- response: Response;
2201
- constructor(message: string, response: Response);
2202
- }
2203
- declare function requestJson<ParsedResponse>(method: string, url: string, params: Dictionary): Promise<[ParsedResponse, Response]>;
2204
-
2205
2200
  declare function computeVisibleDayRange(timedRange: OpenDateRange, nextDayThreshold?: Duration): OpenDateRange;
2206
- declare function isMultiDayRange(range: DateRange): boolean;
2207
2201
  declare function diffDates(date0: DateMarker, date1: DateMarker, dateEnv: DateEnv, largeUnit?: string): Duration;
2208
2202
 
2209
2203
  declare function removeExact(array: any, exactVal: any): number;
@@ -2221,29 +2215,19 @@ type MemoizeHashFunc<Args extends any[], Res> = (argHash: {
2221
2215
  };
2222
2216
  declare function memoizeHashlike<Args extends any[], Res>(workerFunc: (...args: Args) => Res, resEquality?: (res0: Res, res1: Res) => boolean, teardownFunc?: (res: Res) => void): MemoizeHashFunc<Args, Res>;
2223
2217
 
2224
- declare function removeElement(el: HTMLElement): void;
2225
- declare function elementClosest(el: HTMLElement, selector: string): HTMLElement;
2226
- declare function elementMatches(el: HTMLElement, selector: string): HTMLElement;
2227
- declare function findElements(container: HTMLElement[] | HTMLElement | NodeListOf<HTMLElement>, selector: string): HTMLElement[];
2228
- declare function findDirectChildren(parent: HTMLElement[] | HTMLElement, selector?: string): HTMLElement[];
2229
2218
  declare function applyStyle(el: HTMLElement, props: Dictionary): void;
2230
2219
  declare function getEventTargetViaRoot(ev: Event): EventTarget;
2231
2220
  declare function getUniqueDomId(): string;
2232
2221
 
2233
- declare function setStateDimMap<State>(component: Component<unknown, State>, key: keyof State, newMap: {
2234
- [key: string]: number;
2235
- }): void;
2236
- declare function isDimMapsEqual(oldMap: {
2237
- [key: string]: number;
2238
- }, newMap: {
2239
- [key: string]: number;
2240
- }): boolean;
2241
2222
  declare function isDimsEqual(v0: number | undefined, v1: number): boolean;
2242
2223
 
2243
- declare function watchSize(el: HTMLElement, callback: (width: number, height: number) => void): () => void;
2244
- declare function watchWidth(el: HTMLElement, callback: (width: number) => void): () => void;
2245
- declare function watchHeight(el: HTMLElement, callback: (height: number) => void): () => void;
2224
+ type SizeCallback = (width: number, height: number) => void;
2225
+ type DisconnectSize = () => void;
2226
+ type WatchSize = (el: HTMLElement, callback: SizeCallback, client?: boolean, watchWidth?: boolean, watchHeight?: boolean) => DisconnectSize;
2246
2227
  declare function afterSize(callback: () => void): void;
2228
+ declare const watchSize: WatchSize;
2229
+ declare function watchWidth(el: HTMLElement, callback: (width: number) => void): DisconnectSize;
2230
+ declare function watchHeight(el: HTMLElement, callback: (height: number) => void): DisconnectSize;
2247
2231
 
2248
2232
  declare function buildNavLinkAttrs(context: ViewContext, dateMarker: DateMarker, viewType?: string, isTabbable?: boolean): {
2249
2233
  tabIndex: number;
@@ -2358,60 +2342,65 @@ declare function parse(str: any): {
2358
2342
  timeZoneOffset: any;
2359
2343
  };
2360
2344
 
2361
- interface SegSpan {
2345
+ interface CoordSpan {
2362
2346
  start: number;
2363
- end: number;
2347
+ size: number;
2364
2348
  }
2365
- interface SegEntry {
2366
- index: number;
2367
- seg?: Seg;
2368
- segGroup?: SegGroup;
2369
- span: SegSpan;
2370
- thickness?: number;
2349
+ interface CoordRange {
2350
+ start: number;
2351
+ end: number;
2371
2352
  }
2372
- interface SegInsertion {
2373
- level: number;
2374
- levelCoord: number;
2375
- lateral: number;
2376
- touchingLevel: number;
2377
- touchingLateral: number;
2378
- touchingEntry: SegEntry;
2379
- stackCnt: number;
2353
+ interface SlicedCoordRange extends CoordRange {
2354
+ isStart: boolean;
2355
+ isEnd: boolean;
2380
2356
  }
2381
- interface SegRect extends SegEntry {
2357
+ declare function getCoordRangeEnd(r: CoordRange): number;
2358
+ declare function computeEarliestStart(segs: EventRangeProps[]): DateMarker;
2359
+ declare function computeLatestEnd(segs: EventRangeProps[]): DateMarker;
2360
+
2361
+ type EventSeg<R extends SlicedCoordRange> = R & EventRangeProps & {
2362
+ isSlice?: boolean;
2363
+ };
2364
+ type EventPlacement<R extends SlicedCoordRange> = EventSeg<R> & {
2382
2365
  thickness: number;
2366
+ depth: number;
2367
+ isSlice: boolean;
2368
+ isZombie: boolean;
2369
+ };
2370
+ interface EventInsertion<R extends SlicedCoordRange> {
2371
+ levelIndex: number;
2383
2372
  levelCoord: number;
2373
+ lateralIndex: number;
2374
+ touchingPlacement: EventPlacement<R> | undefined;
2375
+ depth: number;
2384
2376
  }
2385
- interface SegGroup {
2386
- key: string;
2387
- span: SegSpan;
2388
- segs: Seg[];
2389
- }
2390
- declare class SegHierarchy {
2391
- private getEntryThickness;
2377
+ declare class SegHierarchy<R extends SlicedCoordRange> {
2378
+ private getSegThickness;
2392
2379
  strictOrder: boolean;
2393
- allowReslicing: boolean;
2394
- maxCoord: number;
2395
- maxStackCnt: number;
2380
+ private maxCoord;
2381
+ private maxDepth;
2382
+ private hiddenConsumes;
2383
+ private allowSlicing;
2384
+ placementsByLevel: EventPlacement<R>[][];
2396
2385
  levelCoords: number[];
2397
- entriesByLevel: SegEntry[][];
2398
- stackCnts: {
2399
- [entryId: string]: number;
2400
- };
2401
- constructor(getEntryThickness?: (entry: SegEntry) => number | undefined);
2402
- addSegs(inputs: SegEntry[]): SegEntry[];
2403
- insertEntry(entry: SegEntry, hiddenEntries: SegEntry[]): void;
2404
- isInsertionValid(insertion: SegInsertion, entry: SegEntry, entryThickness: number): boolean;
2405
- handleInvalidInsertion(insertion: SegInsertion, entry: SegEntry, hiddenEntries: SegEntry[]): void;
2406
- splitEntry(entry: SegEntry, barrier: SegEntry, hiddenEntries: SegEntry[]): void;
2407
- insertEntryAt(entry: SegEntry, insertion: SegInsertion): void;
2408
- findInsertion(newEntry: SegEntry, newEntryThickness: number): SegInsertion;
2409
- toRects(): SegRect[];
2410
- }
2411
- declare function getEntrySpanEnd(entry: SegEntry): number;
2412
- declare function buildEntryKey(entry: SegEntry): string;
2413
- declare function groupIntersectingEntries(entries: SegEntry[]): SegGroup[];
2414
- declare function intersectSpans(span0: SegSpan, span1: SegSpan): SegSpan | null;
2386
+ hiddenSegs: EventSeg<R>[];
2387
+ constructor(segs: EventSeg<R>[], getSegThickness: (seg: EventSeg<R>) => number | undefined, strictOrder: boolean, // HACK
2388
+ maxCoord: number | undefined, maxDepth: number | undefined, hiddenConsumes?: boolean, // hidden segs also hide the touchingPlacement?
2389
+ allowSlicing?: boolean);
2390
+ private insertSeg;
2391
+ private isInsertionValid;
2392
+ private splitSeg;
2393
+ private insertSegAt;
2394
+ findInsertion(seg: CoordRange, segThickness: number): EventInsertion<R>;
2395
+ traverseSegs(handler: (seg: EventPlacement<R>, levelCoord: number) => void): void;
2396
+ }
2397
+ interface SegInternalGroup<R extends SlicedCoordRange> extends CoordRange {
2398
+ segs: EventSeg<R>[];
2399
+ }
2400
+ interface SegGroup<R extends SlicedCoordRange> extends SegInternalGroup<R> {
2401
+ key: string;
2402
+ }
2403
+ declare function groupIntersectingSegs<R extends SlicedCoordRange>(segs: EventSeg<R>[]): SegGroup<R>[];
2415
2404
  declare function binarySearch<Item>(a: Item[], searchVal: number, getItemVal: (item: Item) => number): [number, number];
2416
2405
 
2417
2406
  declare const config: any;
@@ -2434,33 +2423,25 @@ declare class CalendarRoot extends BaseComponent<CalendarRootProps, CalendarRoot
2434
2423
  handleAfterPrint: () => void;
2435
2424
  }
2436
2425
 
2437
- interface DaySeriesSeg {
2438
- firstIndex: number;
2439
- lastIndex: number;
2440
- isStart: boolean;
2441
- isEnd: boolean;
2442
- }
2443
2426
  declare class DaySeriesModel {
2444
2427
  cnt: number;
2445
2428
  dates: DateMarker[];
2446
2429
  indices: number[];
2447
2430
  constructor(range: DateRange, dateProfileGenerator: DateProfileGenerator);
2448
- sliceRange(range: DateRange): DaySeriesSeg | null;
2431
+ sliceRange(range: DateRange): SlicedCoordRange | null;
2449
2432
  private getDateDayIndex;
2450
2433
  }
2451
2434
 
2452
- interface DayTableSeg extends Seg {
2435
+ interface DayGridRange extends SlicedCoordRange {
2453
2436
  row: number;
2454
- firstCol: number;
2455
- lastCol: number;
2456
2437
  }
2457
2438
  interface DayTableCell {
2458
2439
  key: string;
2459
2440
  date: DateMarker;
2460
- extraRenderProps?: Dictionary;
2461
- extraDataAttrs?: Dictionary;
2462
- extraClassNames?: string[];
2463
- extraDateSpan?: Dictionary;
2441
+ renderProps?: Dictionary;
2442
+ attrs?: Dictionary;
2443
+ className?: string;
2444
+ dateSpanProps?: Dictionary;
2464
2445
  }
2465
2446
  declare class DayTableModel {
2466
2447
  rowCnt: number;
@@ -2472,7 +2453,28 @@ declare class DayTableModel {
2472
2453
  buildCells(): any[];
2473
2454
  private buildCell;
2474
2455
  private buildHeaderDates;
2475
- sliceRange(range: DateRange): DayTableSeg[];
2456
+ sliceRange(range: DateRange): DayGridRange[];
2457
+ }
2458
+
2459
+ declare class ScrollListener {
2460
+ el: HTMLElement;
2461
+ emitter: Emitter<any>;
2462
+ private isScrolling;
2463
+ private isTouching;
2464
+ private isRecentlyWheeled;
2465
+ private isRecentlyScrolled;
2466
+ private wheelWaiter;
2467
+ private scrollWaiter;
2468
+ constructor(el: HTMLElement);
2469
+ destroy(): void;
2470
+ private startScroll;
2471
+ endScroll(): void;
2472
+ private handleScroll;
2473
+ private _handleScrollWaited;
2474
+ private handleWheel;
2475
+ private _handleWheelWaited;
2476
+ private handleTouchStart;
2477
+ private handleTouchEnd;
2476
2478
  }
2477
2479
 
2478
2480
  interface ScrollerProps {
@@ -2480,32 +2482,32 @@ interface ScrollerProps {
2480
2482
  horizontal?: boolean;
2481
2483
  hideScrollbars?: boolean;
2482
2484
  children: ComponentChildren;
2483
- elClassNames?: string[];
2484
- elStyle?: Dictionary$1;
2485
- widthRef?: Ref<number>;
2486
- heightRef?: Ref<number>;
2487
- leftScrollbarWidthRef?: Ref<number>;
2488
- rightScrollbarWidthRef?: Ref<number>;
2485
+ className?: string;
2486
+ style?: Dictionary;
2487
+ clientWidthRef?: Ref<number>;
2488
+ clientHeightRef?: Ref<number>;
2489
+ endScrollbarWidthRef?: Ref<number>;
2489
2490
  bottomScrollbarWidthRef?: Ref<number>;
2490
2491
  }
2491
- declare class Scroller extends DateComponent$1<ScrollerProps> implements ScrollerInterface {
2492
- private elRef;
2492
+ declare class Scroller extends DateComponent<ScrollerProps> implements ScrollerInterface {
2493
+ private el?;
2494
+ listener: ScrollListener;
2493
2495
  private disconnectSize?;
2494
- private currentWidth;
2495
- private currentHeight;
2496
- private currentLeftScrollbarWidth;
2497
- private currentRightScrollbarWidth;
2496
+ private currentClientWidth;
2497
+ private currentClientHeight;
2498
+ private currentEndScrollbarWidth;
2498
2499
  private currentBottomScrollbarWidth;
2499
2500
  render(): createElement.JSX.Element;
2500
- componentDidMount(): void;
2501
- componentWillUnmount(): void;
2502
- get el(): HTMLElement;
2501
+ handleEl: (el: HTMLDivElement | null) => void;
2502
+ endScroll(): void;
2503
2503
  get x(): number;
2504
2504
  get y(): number;
2505
2505
  scrollTo({ x, y }: {
2506
2506
  x?: number;
2507
2507
  y?: number;
2508
2508
  }): void;
2509
+ addScrollEndListener(handler: (x: number, y: number) => void): void;
2510
+ removeScrollEndListener(handler: (x: number, y: number) => void): void;
2509
2511
  }
2510
2512
  declare function getNormalizedScrollX(el: HTMLElement, isRtl: boolean): number;
2511
2513
  declare function setNormalizedScrollX(el: HTMLElement, isRtl: boolean, x: number): void;
@@ -2519,26 +2521,26 @@ interface SliceableProps {
2519
2521
  eventSelection: string;
2520
2522
  eventUiBases: EventUiHash;
2521
2523
  }
2522
- interface SlicedProps<SegType extends Seg> {
2523
- dateSelectionSegs: SegType[];
2524
- businessHourSegs: SegType[];
2525
- fgEventSegs: SegType[];
2526
- bgEventSegs: SegType[];
2527
- eventDrag: EventSegUiInteractionState | null;
2528
- eventResize: EventSegUiInteractionState | null;
2524
+ interface SlicedProps<R> {
2525
+ fgEventSegs: (R & EventRangeProps)[];
2526
+ bgEventSegs: (R & EventRangeProps)[];
2527
+ businessHourSegs: (R & EventRangeProps)[];
2528
+ dateSelectionSegs: (R & EventRangeProps)[];
2529
+ eventDrag: EventSegUiInteractionState<R> | null;
2530
+ eventResize: EventSegUiInteractionState<R> | null;
2529
2531
  eventSelection: string;
2530
2532
  }
2531
- declare abstract class Slicer<SegType extends Seg, ExtraArgs extends any[] = []> {
2533
+ declare abstract class Slicer<R, ExtraArgs extends any[] = []> {
2532
2534
  private sliceBusinessHours;
2533
2535
  private sliceDateSelection;
2534
2536
  private sliceEventStore;
2535
2537
  private sliceEventDrag;
2536
2538
  private sliceEventResize;
2537
- abstract sliceRange(dateRange: DateRange, ...extraArgs: ExtraArgs): SegType[];
2539
+ abstract sliceRange(dateRange: DateRange, ...extraArgs: ExtraArgs): R[];
2538
2540
  protected forceDayIfListItem: boolean;
2539
- sliceProps(props: SliceableProps, dateProfile: DateProfile, nextDayThreshold: Duration | null, context: CalendarContext, ...extraArgs: ExtraArgs): SlicedProps<SegType>;
2541
+ sliceProps(props: SliceableProps, dateProfile: DateProfile, nextDayThreshold: Duration | null, context: CalendarContext, ...extraArgs: ExtraArgs): SlicedProps<R>;
2540
2542
  sliceNowDate(// does not memoize
2541
- date: DateMarker, dateProfile: DateProfile, nextDayThreshold: Duration | null, context: CalendarContext, ...extraArgs: ExtraArgs): SegType[];
2543
+ date: DateMarker, dateProfile: DateProfile, nextDayThreshold: Duration | null, context: CalendarContext, ...extraArgs: ExtraArgs): R[];
2542
2544
  private _sliceBusinessHours;
2543
2545
  private _sliceEventStore;
2544
2546
  private _sliceInteraction;
@@ -2551,6 +2553,12 @@ declare function isInteractionValid(interaction: EventInteractionState, dateProf
2551
2553
  declare function isDateSelectionValid(dateSelection: DateSpan, dateProfile: DateProfile, context: CalendarContext): boolean;
2552
2554
  declare function isPropsValid(state: SplittableProps, context: CalendarContext, dateSpanMeta?: {}, filterConfig?: any): boolean;
2553
2555
 
2556
+ declare class JsonRequestError extends Error {
2557
+ response: Response;
2558
+ constructor(message: string, response: Response);
2559
+ }
2560
+ declare function requestJson<ParsedResponse>(method: string, url: string, params: Dictionary): Promise<[ParsedResponse, Response]>;
2561
+
2554
2562
  declare class DelayedRunner {
2555
2563
  private drainedOption?;
2556
2564
  private isRunning;
@@ -2610,18 +2618,14 @@ declare class NowTimer extends Component<NowTimerProps, NowTimerState> {
2610
2618
  private clearTimeout;
2611
2619
  }
2612
2620
 
2613
- declare class ScrollResponder<T> {
2614
- private _handleScroll;
2615
- protected queuedScroll?: T;
2616
- constructor(_handleScroll: (scroll: T) => boolean);
2617
- handleScroll: (scroll: T) => void;
2618
- drain(): void;
2619
- }
2620
-
2621
2621
  interface StandardEventProps {
2622
2622
  elRef?: ElRef;
2623
- elClasses?: string[];
2624
- seg: Seg;
2623
+ className?: string;
2624
+ eventRange: EventRenderRange;
2625
+ slicedStart?: DateMarker;
2626
+ slicedEnd?: DateMarker;
2627
+ isStart: boolean;
2628
+ isEnd: boolean;
2625
2629
  isDragging: boolean;
2626
2630
  isResizing: boolean;
2627
2631
  isDateSelecting: boolean;
@@ -2640,7 +2644,11 @@ declare class StandardEvent extends BaseComponent<StandardEventProps> {
2640
2644
  }
2641
2645
 
2642
2646
  interface MinimalEventProps {
2643
- seg: Seg;
2647
+ eventRange: EventRenderRange;
2648
+ slicedStart?: DateMarker;
2649
+ slicedEnd?: DateMarker;
2650
+ isStart: boolean;
2651
+ isEnd: boolean;
2644
2652
  isDragging: boolean;
2645
2653
  isResizing: boolean;
2646
2654
  isDateSelecting: boolean;
@@ -2664,7 +2672,9 @@ declare class EventContainer extends BaseComponent<EventContainerProps> {
2664
2672
  }
2665
2673
 
2666
2674
  interface BgEventProps {
2667
- seg: Seg;
2675
+ eventRange: EventRenderRange;
2676
+ isStart: boolean;
2677
+ isEnd: boolean;
2668
2678
  isPast: boolean;
2669
2679
  isFuture: boolean;
2670
2680
  isToday: boolean;
@@ -2676,4 +2686,17 @@ declare function renderFill(fillType: string): createElement.JSX.Element;
2676
2686
 
2677
2687
  declare function injectStyles(styleText: string): void;
2678
2688
 
2679
- export { DayCellMountArg as $, AllowFunc as A, BusinessHoursInput as B, CalendarImpl as C, DateInput as D, EventSourceApi as E, FormatterInput as F, WeekNumberContentArg as G, WeekNumberMountArg as H, MoreLinkMountArg as I, JsonRequestError as J, SlotLaneContentArg as K, LocaleInput as L, MoreLinkContentArg as M, NativeFormatterOptions as N, OverlapFunc as O, PluginDefInput as P, SlotLaneMountArg as Q, SlotLabelContentArg as R, SpecificViewContentArg as S, SlotLabelMountArg as T, AllDayContentArg as U, ViewApi as V, WillUnmountHandler as W, AllDayMountArg as X, DayHeaderContentArg as Y, DayHeaderMountArg as Z, DayCellContentArg as _, CalendarOptions as a, enableCursor as a$, ViewContentArg as a0, ViewMountArg as a1, EventClickArg as a2, EventHoveringArg as a3, DateSelectArg as a4, DateUnselectArg as a5, WeekNumberCalculation as a6, ToolbarInput as a7, CustomButtonInput as a8, ButtonIconsInput as a9, RefinedOptionsFromRefiners as aA, CalendarListenerRefiners as aB, BASE_OPTION_DEFAULTS as aC, identity as aD, refineProps as aE, EventDef as aF, EventDefHash as aG, EventInstance as aH, EventInstanceHash as aI, createEventInstance as aJ, EventRefined as aK, EventTuple as aL, EventRefiners as aM, parseEventDef as aN, refineEventDef as aO, parseBusinessHours as aP, OrderSpec as aQ, padStart as aR, isInt as aS, parseFieldSpecs as aT, compareByFieldSpecs as aU, flexibleCompare as aV, preventSelection as aW, allowSelection as aX, preventContextMenu as aY, allowContextMenu as aZ, compareNumbers as a_, ButtonTextCompoundInput as aa, EventContentArg as ab, EventMountArg as ac, DatesSetArg as ad, EventAddArg as ae, EventChangeArg as af, EventDropArg as ag, EventRemoveArg as ah, ButtonHintCompoundInput as ai, CustomRenderingHandler as aj, CustomRenderingStore as ak, DateSpanApi as al, DatePointApi as am, DateSelectionApi as an, Duration as ao, EventSegment as ap, MoreLinkAction as aq, MoreLinkSimpleAction as ar, MoreLinkArg as as, MoreLinkHandler as at, Identity as au, Dictionary as av, BaseOptionRefiners as aw, BaseOptionsRefined as ax, ViewOptionsRefined as ay, RawOptionsFromRefiners as az, PluginDef as b, getClippingParents as b$, disableCursor as b0, guid as b1, computeVisibleDayRange as b2, isMultiDayRange as b3, diffDates as b4, removeExact as b5, isArraysEqual as b6, MemoizeHashFunc as b7, MemoiseArrayFunc as b8, memoize as b9, EventStore as bA, createEmptyEventStore as bB, mergeEventStores as bC, getRelevantEvents as bD, eventTupleToStore as bE, EventUiHash as bF, EventUi as bG, combineEventUis as bH, createEventUi as bI, SplittableProps as bJ, Splitter as bK, getDayClassNames as bL, getDateMeta as bM, getSlotClassNames as bN, DateMeta as bO, setStateDimMap as bP, isDimMapsEqual as bQ, isDimsEqual as bR, watchSize as bS, watchWidth as bT, watchHeight as bU, afterSize as bV, buildNavLinkAttrs as bW, preventDefault as bX, whenTransitionDone as bY, computeInnerRect as bZ, computeEdges as b_, memoizeObjArg as ba, memoizeArraylike as bb, memoizeHashlike as bc, Rect as bd, Point as be, intersectRects as bf, pointInsideRect as bg, constrainPoint as bh, getRectCenter as bi, diffPoints as bj, translateRect as bk, mapHash as bl, filterHash as bm, isPropsEqual as bn, compareObjs as bo, collectFromHash as bp, findElements as bq, findDirectChildren as br, removeElement as bs, applyStyle as bt, elementMatches as bu, elementClosest as bv, getEventTargetViaRoot as bw, getUniqueDomId as bx, parseClassNames as by, fracToCssDim as bz, CalendarApi as c, SegGroup as c$, computeRect as c0, unpromisify as c1, Emitter as c2, DateRange as c3, rangeContainsMarker as c4, intersectRanges as c5, rangesEqual as c6, rangesIntersect as c7, rangeContainsRange as c8, PositionCache as c9, isValidDate as cA, createDuration as cB, asCleanDays as cC, multiplyDuration as cD, addDurations as cE, asRoughMinutes as cF, asRoughSeconds as cG, asRoughMs as cH, wholeDivideDurations as cI, greatestDurationDenominator as cJ, DateEnv as cK, createFormatter as cL, DateFormatter as cM, VerboseFormattingArg as cN, formatIsoTimeString as cO, formatDayString as cP, buildIsoString as cQ, formatIsoMonthStr as cR, NamedTimeZoneImpl as cS, parse as cT, EventSourceDef as cU, EventSourceRefined as cV, EventSourceRefiners as cW, SegSpan as cX, SegRect as cY, SegEntry as cZ, SegInsertion as c_, ScrollController as ca, ElementScrollController as cb, WindowScrollController as cc, Theme as cd, ViewContext as ce, ViewContextType as cf, Seg as cg, EventSegUiInteractionState as ch, DateComponent as ci, CalendarData as cj, ViewProps as ck, DateProfile as cl, DateProfileGenerator as cm, ViewSpec as cn, DateSpan as co, isDateSpansEqual as cp, DateMarker as cq, addDays as cr, startOfDay as cs, addMs as ct, addWeeks as cu, diffWeeks as cv, diffWholeWeeks as cw, diffWholeDays as cx, diffDayAndTime as cy, diffDays as cz, EventApi as d, getIsRtlScrollbarOnLeft as d$, SegHierarchy as d0, buildEntryKey as d1, getEntrySpanEnd as d2, binarySearch as d3, groupIntersectingEntries as d4, intersectSpans as d5, InteractionSettings as d6, InteractionSettingsStore as d7, Interaction as d8, interactionSettingsToStore as d9, buildEventRangeKey as dA, getSegAnchorAttrs as dB, DayTableCell as dC, DayTableModel as dD, Scroller as dE, getNormalizedScrollX as dF, setNormalizedScrollX as dG, SlicedProps as dH, Slicer as dI, EventMutation as dJ, applyMutationToEventStore as dK, Constraint as dL, isPropsValid as dM, isInteractionValid as dN, isDateSelectionValid as dO, requestJson as dP, BaseComponent as dQ, setRef as dR, DelayedRunner as dS, getStickyFooterScrollbar as dT, getStickyHeaderDates as dU, getIsHeightAuto as dV, getScrollerSyncerClass as dW, ScrollerInterface as dX, ScrollerSyncerInterface as dY, getScrollbarWidths as dZ, RefMap as d_, interactionSettingsStore as da, PointerDragEvent as db, Hit as dc, dateSelectionJoinTransformer as dd, eventDragMutationMassager as de, EventDropTransformers as df, ElementDragging as dg, config as dh, RecurringType as di, DragMetaInput as dj, DragMeta as dk, parseDragMeta as dl, ViewPropsTransformer as dm, Action as dn, CalendarContext as dp, CalendarContentProps as dq, CalendarRoot as dr, DaySeriesModel as ds, EventInteractionState as dt, sliceEventStore as du, hasBgRendering as dv, getElSeg as dw, buildSegTimeText as dx, sortEventSegs as dy, getSegMeta as dz, EventRenderRange as e, NowTimer as e0, ScrollResponder as e1, MountArg as e2, StandardEvent as e3, NowIndicatorContainer as e4, DayCellContainer as e5, hasCustomDayCellContent as e6, MinimalEventProps as e7, EventContainer as e8, renderFill as e9, BgEvent as ea, WeekNumberContainerProps as eb, WeekNumberContainer as ec, MoreLinkContainer as ed, computeEarliestSegStart as ee, ViewContainerProps as ef, ViewContainer as eg, DatePointTransform as eh, DateSpanTransform as ei, triggerDateSelect as ej, getDefaultEventEnd as ek, injectStyles as el, EventImpl as em, buildEventApis as en, ElProps as eo, buildElAttrs as ep, InnerContainerFunc as eq, ContentContainer as er, CustomRendering as es, CalendarListeners as f, ViewOptions as g, DurationInput as h, DateSpanInput as i, DateRangeInput as j, EventSourceInput as k, EventSourceFunc as l, EventSourceFuncArg as m, EventInput as n, EventInputTransformer as o, CssDimValue as p, LocaleSingularArg as q, ConstraintInput as r, sliceEvents as s, ViewComponentType as t, SpecificViewMountArg as u, ClassNamesGenerator as v, CustomContentGenerator as w, DidMountHandler as x, NowIndicatorContentArg as y, NowIndicatorMountArg as z };
2689
+ interface StickyFooterScrollbarProps {
2690
+ canvasWidth: CssDimValue;
2691
+ scrollerRef?: Ref<Scroller>;
2692
+ scrollbarWidthRef?: Ref<number>;
2693
+ }
2694
+ declare class StickyFooterScrollbar extends BaseComponent<StickyFooterScrollbarProps> {
2695
+ rootElRef: preact.RefObject<HTMLDivElement>;
2696
+ disconnectHeight?: () => void;
2697
+ render(): createElement.JSX.Element;
2698
+ componentDidMount(): void;
2699
+ componentWillUnmount(): void;
2700
+ }
2701
+
2702
+ export { DayCellMountArg as $, AllowFunc as A, BusinessHoursInput as B, CalendarImpl as C, DateInput as D, EventSourceApi as E, FormatterInput as F, WeekNumberContentArg as G, WeekNumberMountArg as H, MoreLinkMountArg as I, JsonRequestError as J, SlotLaneContentArg as K, LocaleInput as L, MoreLinkContentArg as M, NativeFormatterOptions as N, OverlapFunc as O, PluginDefInput as P, SlotLaneMountArg as Q, SlotLabelContentArg as R, SpecificViewContentArg as S, SlotLabelMountArg as T, AllDayContentArg as U, ViewApi as V, WillUnmountHandler as W, AllDayMountArg as X, DayHeaderContentArg as Y, DayHeaderMountArg as Z, DayCellContentArg as _, CalendarOptions as a, enableCursor as a$, ViewContentArg as a0, ViewMountArg as a1, EventClickArg as a2, EventHoveringArg as a3, DateSelectArg as a4, DateUnselectArg as a5, WeekNumberCalculation as a6, ToolbarInput as a7, CustomButtonInput as a8, ButtonIconsInput as a9, RefinedOptionsFromRefiners as aA, CalendarListenerRefiners as aB, BASE_OPTION_DEFAULTS as aC, identity as aD, refineProps as aE, EventDef as aF, EventDefHash as aG, EventInstance as aH, EventInstanceHash as aI, createEventInstance as aJ, EventRefined as aK, EventTuple as aL, EventRefiners as aM, parseEventDef as aN, refineEventDef as aO, parseBusinessHours as aP, OrderSpec as aQ, padStart as aR, isInt as aS, parseFieldSpecs as aT, compareByFieldSpecs as aU, flexibleCompare as aV, preventSelection as aW, allowSelection as aX, preventContextMenu as aY, allowContextMenu as aZ, compareNumbers as a_, ButtonTextCompoundInput as aa, EventContentArg as ab, EventMountArg as ac, DatesSetArg as ad, EventAddArg as ae, EventChangeArg as af, EventDropArg as ag, EventRemoveArg as ah, ButtonHintCompoundInput as ai, CustomRenderingHandler as aj, CustomRenderingStore as ak, DateSpanApi as al, DatePointApi as am, DateSelectionApi as an, Duration as ao, EventSegment as ap, MoreLinkAction as aq, MoreLinkSimpleAction as ar, MoreLinkArg as as, MoreLinkHandler as at, Identity as au, Dictionary as av, BaseOptionRefiners as aw, BaseOptionsRefined as ax, ViewOptionsRefined as ay, RawOptionsFromRefiners as az, PluginDef as b, rangesEqual as b$, disableCursor as b0, guid as b1, computeVisibleDayRange as b2, diffDates as b3, removeExact as b4, isArraysEqual as b5, MemoizeHashFunc as b6, MemoiseArrayFunc as b7, memoize as b8, memoizeObjArg as b9, EventUiHash as bA, EventUi as bB, combineEventUis as bC, createEventUi as bD, SplittableProps as bE, Splitter as bF, getDayClassName as bG, getDateMeta as bH, getSlotClassName as bI, DateMeta as bJ, isDimsEqual as bK, watchSize as bL, watchWidth as bM, watchHeight as bN, afterSize as bO, buildNavLinkAttrs as bP, preventDefault as bQ, whenTransitionDone as bR, computeInnerRect as bS, computeEdges as bT, getClippingParents as bU, computeRect as bV, unpromisify as bW, Emitter as bX, DateRange as bY, rangeContainsMarker as bZ, intersectRanges as b_, memoizeArraylike as ba, memoizeHashlike as bb, Rect as bc, Point as bd, intersectRects as be, pointInsideRect as bf, constrainPoint as bg, getRectCenter as bh, diffPoints as bi, translateRect as bj, mapHash as bk, filterHash as bl, isPropsEqual as bm, compareObjs as bn, collectFromHash as bo, applyStyle as bp, getEventTargetViaRoot as bq, getUniqueDomId as br, joinClassNames as bs, parseClassNames as bt, fracToCssDim as bu, EventStore as bv, createEmptyEventStore as bw, mergeEventStores as bx, getRelevantEvents as by, eventTupleToStore as bz, CalendarApi as c, Hit as c$, rangesIntersect as c0, rangeContainsRange as c1, PositionCache as c2, ScrollController as c3, ElementScrollController as c4, WindowScrollController as c5, Theme as c6, ViewContext as c7, ViewContextType as c8, EventSegUiInteractionState as c9, wholeDivideDurations as cA, greatestDurationDenominator as cB, DateEnv as cC, createFormatter as cD, DateFormatter as cE, VerboseFormattingArg as cF, formatIsoTimeString as cG, formatDayString as cH, buildIsoString as cI, formatIsoMonthStr as cJ, NamedTimeZoneImpl as cK, parse as cL, EventSourceDef as cM, EventSourceRefined as cN, EventSourceRefiners as cO, EventPlacement as cP, EventInsertion as cQ, SegHierarchy as cR, SegGroup as cS, groupIntersectingSegs as cT, binarySearch as cU, InteractionSettings as cV, InteractionSettingsStore as cW, Interaction as cX, interactionSettingsToStore as cY, interactionSettingsStore as cZ, PointerDragEvent as c_, DateComponent as ca, CalendarData as cb, ViewProps as cc, DateProfile as cd, DateProfileGenerator as ce, ViewSpec as cf, DateSpan as cg, isDateSpansEqual as ch, DateMarker as ci, addDays as cj, startOfDay as ck, addMs as cl, addWeeks as cm, diffWeeks as cn, diffWholeWeeks as co, diffWholeDays as cp, diffDayAndTime as cq, diffDays as cr, isValidDate as cs, createDuration as ct, asCleanDays as cu, multiplyDuration as cv, addDurations as cw, asRoughMinutes as cx, asRoughSeconds as cy, asRoughMs as cz, EventApi as d, BgEvent as d$, dateSelectionJoinTransformer as d0, eventDragMutationMassager as d1, EventDropTransformers as d2, ElementDragging as d3, config as d4, RecurringType as d5, DragMetaInput as d6, DragMeta as d7, parseDragMeta as d8, ViewPropsTransformer as d9, applyMutationToEventStore as dA, Constraint as dB, isPropsValid as dC, isInteractionValid as dD, isDateSelectionValid as dE, requestJson as dF, BaseComponent as dG, setRef as dH, DelayedRunner as dI, getStickyFooterScrollbar as dJ, getStickyHeaderDates as dK, getIsHeightAuto as dL, getScrollerSyncerClass as dM, ScrollerInterface as dN, ScrollerSyncerInterface as dO, getScrollbarWidths as dP, RefMap as dQ, getIsRtlScrollbarOnLeft as dR, NowTimer as dS, MountArg as dT, StandardEvent as dU, NowIndicatorContainer as dV, DayCellContainer as dW, hasCustomDayCellContent as dX, MinimalEventProps as dY, EventContainer as dZ, renderFill as d_, Action as da, CalendarContext as db, CalendarContentProps as dc, CalendarRoot as dd, DaySeriesModel as de, EventInteractionState as df, sliceEventStore as dg, hasBgRendering as dh, getElEventRange as di, buildEventRangeTimeText as dj, sortEventSegs as dk, getEventRangeMeta as dl, buildEventRangeKey as dm, getEventRangeAnchorAttrs as dn, EventRangeProps as dp, getEventKey as dq, DayTableCell as dr, DayGridRange as ds, DayTableModel as dt, Scroller as du, getNormalizedScrollX as dv, setNormalizedScrollX as dw, SlicedProps as dx, Slicer as dy, EventMutation as dz, EventRenderRange as e, WeekNumberContainerProps as e0, WeekNumberContainer as e1, MoreLinkContainer as e2, ViewContainerProps as e3, ViewContainer as e4, DatePointTransform as e5, DateSpanTransform as e6, triggerDateSelect as e7, getDefaultEventEnd as e8, injectStyles as e9, EventImpl as ea, buildEventApis as eb, ElProps as ec, buildElAttrs as ed, InnerContainerFunc as ee, ContentContainer as ef, renderText as eg, CustomRendering as eh, CoordRange as ei, CoordSpan as ej, SlicedCoordRange as ek, computeEarliestStart as el, computeLatestEnd as em, getCoordRangeEnd as en, StickyFooterScrollbar as eo, CalendarListeners as f, ViewOptions as g, DurationInput as h, DateSpanInput as i, DateRangeInput as j, EventSourceInput as k, EventSourceFunc as l, EventSourceFuncArg as m, EventInput as n, EventInputTransformer as o, CssDimValue as p, LocaleSingularArg as q, ConstraintInput as r, sliceEvents as s, ViewComponentType as t, SpecificViewMountArg as u, ClassNamesGenerator as v, CustomContentGenerator as w, DidMountHandler as x, NowIndicatorContentArg as y, NowIndicatorMountArg as z };