Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found
Select Git revision
  • komasolver
  • main
  • renovate/django-5.x
  • renovate/django-debug-toolbar-5.x
  • renovate/django_csp-4.x
  • renovate/djangorestframework-3.x
  • renovate/tzdata-2025.x
  • renovate/uwsgi-2.x
8 results

Target

Select target project
  • konstantin/akplanning
  • matedealer/akplanning
  • kif/akplanning
  • mirco/akplanning
  • lordofthevoid/akplanning
  • voidptr/akplanning
  • xayomer/akplanning-fork
  • mollux/akplanning
  • neumantm/akplanning
  • mmarx/akplanning
  • nerf/akplanning
  • felix_bonn/akplanning
  • sebastian.uschmann/akplanning
13 results
Select Git revision
Show changes
Showing
with 0 additions and 12993 deletions
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
typeof define === 'function' && define.amd ? define(factory) :
(global = global || self, (global.FullCalendarLocales = global.FullCalendarLocales || {}, global.FullCalendarLocales.pl = factory()));
}(this, function () { 'use strict';
var pl = {
code: "pl",
week: {
dow: 1,
doy: 4 // The week that contains Jan 4th is the first week of the year.
},
buttonText: {
prev: "Poprzedni",
next: "Następny",
today: "Dziś",
month: "Miesiąc",
week: "Tydzień",
day: "Dzień",
list: "Plan dnia"
},
weekLabel: "Tydz",
allDayText: "Cały dzień",
eventLimitText: "więcej",
noEventsMessage: "Brak wydarzeń do wyświetlenia"
};
return pl;
}));
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
typeof define === 'function' && define.amd ? define(factory) :
(global = global || self, (global.FullCalendarLocales = global.FullCalendarLocales || {}, global.FullCalendarLocales['pt-br'] = factory()));
}(this, function () { 'use strict';
var ptBr = {
code: "pt-br",
buttonText: {
prev: "Anterior",
next: "Próximo",
today: "Hoje",
month: "Mês",
week: "Semana",
day: "Dia",
list: "Compromissos"
},
weekLabel: "Sm",
allDayText: "dia inteiro",
eventLimitText: function (n) {
return "mais +" + n;
},
noEventsMessage: "Não há eventos para mostrar"
};
return ptBr;
}));
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
typeof define === 'function' && define.amd ? define(factory) :
(global = global || self, (global.FullCalendarLocales = global.FullCalendarLocales || {}, global.FullCalendarLocales.pt = factory()));
}(this, function () { 'use strict';
var pt = {
code: "pt",
week: {
dow: 1,
doy: 4 // The week that contains Jan 4th is the first week of the year.
},
buttonText: {
prev: "Anterior",
next: "Seguinte",
today: "Hoje",
month: "Mês",
week: "Semana",
day: "Dia",
list: "Agenda"
},
weekLabel: "Sem",
allDayText: "Todo o dia",
eventLimitText: "mais",
noEventsMessage: "Não há eventos para mostrar"
};
return pt;
}));
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
typeof define === 'function' && define.amd ? define(factory) :
(global = global || self, (global.FullCalendarLocales = global.FullCalendarLocales || {}, global.FullCalendarLocales.ro = factory()));
}(this, function () { 'use strict';
var ro = {
code: "ro",
week: {
dow: 1,
doy: 7 // The week that contains Jan 1st is the first week of the year.
},
buttonText: {
prev: "precedentă",
next: "următoare",
today: "Azi",
month: "Lună",
week: "Săptămână",
day: "Zi",
list: "Agendă"
},
weekLabel: "Săpt",
allDayText: "Toată ziua",
eventLimitText: function (n) {
return "+alte " + n;
},
noEventsMessage: "Nu există evenimente de afișat"
};
return ro;
}));
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
typeof define === 'function' && define.amd ? define(factory) :
(global = global || self, (global.FullCalendarLocales = global.FullCalendarLocales || {}, global.FullCalendarLocales.ru = factory()));
}(this, function () { 'use strict';
var ru = {
code: "ru",
week: {
dow: 1,
doy: 4 // The week that contains Jan 4th is the first week of the year.
},
buttonText: {
prev: "Пред",
next: "След",
today: "Сегодня",
month: "Месяц",
week: "Неделя",
day: "День",
list: "Повестка дня"
},
weekLabel: "Нед",
allDayText: "Весь день",
eventLimitText: function (n) {
return "+ ещё " + n;
},
noEventsMessage: "Нет событий для отображения"
};
return ru;
}));
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
typeof define === 'function' && define.amd ? define(factory) :
(global = global || self, (global.FullCalendarLocales = global.FullCalendarLocales || {}, global.FullCalendarLocales.sk = factory()));
}(this, function () { 'use strict';
var sk = {
code: "sk",
week: {
dow: 1,
doy: 4 // The week that contains Jan 4th is the first week of the year.
},
buttonText: {
prev: "Predchádzajúci",
next: "Nasledujúci",
today: "Dnes",
month: "Mesiac",
week: "Týždeň",
day: "Deň",
list: "Rozvrh"
},
weekLabel: "Ty",
allDayText: "Celý deň",
eventLimitText: function (n) {
return "+ďalšie: " + n;
},
noEventsMessage: "Žiadne akcie na zobrazenie"
};
return sk;
}));
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
typeof define === 'function' && define.amd ? define(factory) :
(global = global || self, (global.FullCalendarLocales = global.FullCalendarLocales || {}, global.FullCalendarLocales.sl = factory()));
}(this, function () { 'use strict';
var sl = {
code: "sl",
week: {
dow: 1,
doy: 7 // The week that contains Jan 1st is the first week of the year.
},
buttonText: {
prev: "Prejšnji",
next: "Naslednji",
today: "Trenutni",
month: "Mesec",
week: "Teden",
day: "Dan",
list: "Dnevni red"
},
weekLabel: "Teden",
allDayText: "Ves dan",
eventLimitText: "več",
noEventsMessage: "Ni dogodkov za prikaz"
};
return sl;
}));
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
typeof define === 'function' && define.amd ? define(factory) :
(global = global || self, (global.FullCalendarLocales = global.FullCalendarLocales || {}, global.FullCalendarLocales.sq = factory()));
}(this, function () { 'use strict';
var sq = {
code: "sq",
week: {
dow: 1,
doy: 4 // The week that contains Jan 4th is the first week of the year.
},
buttonText: {
prev: "mbrapa",
next: "Përpara",
today: "sot",
month: "Muaj",
week: "Javë",
day: "Ditë",
list: "Listë"
},
weekLabel: "Ja",
allDayHtml: "Gjithë<br/>ditën",
eventLimitText: function (n) {
return "+më tepër " + n;
},
noEventsMessage: "Nuk ka evente për të shfaqur"
};
return sq;
}));
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
typeof define === 'function' && define.amd ? define(factory) :
(global = global || self, (global.FullCalendarLocales = global.FullCalendarLocales || {}, global.FullCalendarLocales['sr-cyrl'] = factory()));
}(this, function () { 'use strict';
var srCyrl = {
code: "sr-cyrl",
week: {
dow: 1,
doy: 7 // The week that contains Jan 1st is the first week of the year.
},
buttonText: {
prev: "Претходна",
next: "следећи",
today: "Данас",
month: "Месец",
week: "Недеља",
day: "Дан",
list: "Планер"
},
weekLabel: "Сед",
allDayText: "Цео дан",
eventLimitText: function (n) {
return "+ још " + n;
},
noEventsMessage: "Нема догађаја за приказ"
};
return srCyrl;
}));
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
typeof define === 'function' && define.amd ? define(factory) :
(global = global || self, (global.FullCalendarLocales = global.FullCalendarLocales || {}, global.FullCalendarLocales.sr = factory()));
}(this, function () { 'use strict';
var sr = {
code: "sr",
week: {
dow: 1,
doy: 7 // The week that contains Jan 1st is the first week of the year.
},
buttonText: {
prev: "Prethodna",
next: "Sledeći",
today: "Danas",
month: "Mеsеc",
week: "Nеdеlja",
day: "Dan",
list: "Planеr"
},
weekLabel: "Sed",
allDayText: "Cеo dan",
eventLimitText: function (n) {
return "+ još " + n;
},
noEventsMessage: "Nеma događaja za prikaz"
};
return sr;
}));
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
typeof define === 'function' && define.amd ? define(factory) :
(global = global || self, (global.FullCalendarLocales = global.FullCalendarLocales || {}, global.FullCalendarLocales.sv = factory()));
}(this, function () { 'use strict';
var sv = {
code: "sv",
week: {
dow: 1,
doy: 4 // The week that contains Jan 4th is the first week of the year.
},
buttonText: {
prev: "Förra",
next: "Nästa",
today: "Idag",
month: "Månad",
week: "Vecka",
day: "Dag",
list: "Program"
},
weekLabel: "v.",
allDayText: "Heldag",
eventLimitText: "till",
noEventsMessage: "Inga händelser att visa"
};
return sv;
}));
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
typeof define === 'function' && define.amd ? define(factory) :
(global = global || self, (global.FullCalendarLocales = global.FullCalendarLocales || {}, global.FullCalendarLocales.th = factory()));
}(this, function () { 'use strict';
var th = {
code: "th",
buttonText: {
prev: "ย้อน",
next: "ถัดไป",
today: "วันนี้",
month: "เดือน",
week: "สัปดาห์",
day: "วัน",
list: "แผนงาน"
},
allDayText: "ตลอดวัน",
eventLimitText: "เพิ่มเติม",
noEventsMessage: "ไม่มีกิจกรรมที่จะแสดง"
};
return th;
}));
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
typeof define === 'function' && define.amd ? define(factory) :
(global = global || self, (global.FullCalendarLocales = global.FullCalendarLocales || {}, global.FullCalendarLocales.tr = factory()));
}(this, function () { 'use strict';
var tr = {
code: "tr",
week: {
dow: 1,
doy: 7 // The week that contains Jan 1st is the first week of the year.
},
buttonText: {
prev: "geri",
next: "ileri",
today: "bugün",
month: "Ay",
week: "Hafta",
day: "Gün",
list: "Ajanda"
},
weekLabel: "Hf",
allDayText: "Tüm gün",
eventLimitText: "daha fazla",
noEventsMessage: "Gösterilecek etkinlik yok"
};
return tr;
}));
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
typeof define === 'function' && define.amd ? define(factory) :
(global = global || self, (global.FullCalendarLocales = global.FullCalendarLocales || {}, global.FullCalendarLocales.uk = factory()));
}(this, function () { 'use strict';
var uk = {
code: "uk",
week: {
dow: 1,
doy: 7 // The week that contains Jan 1st is the first week of the year.
},
buttonText: {
prev: "Попередній",
next: "далі",
today: "Сьогодні",
month: "Місяць",
week: "Тиждень",
day: "День",
list: "Порядок денний"
},
weekLabel: "Тиж",
allDayText: "Увесь день",
eventLimitText: function (n) {
return "+ще " + n + "...";
},
noEventsMessage: "Немає подій для відображення"
};
return uk;
}));
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
typeof define === 'function' && define.amd ? define(factory) :
(global = global || self, (global.FullCalendarLocales = global.FullCalendarLocales || {}, global.FullCalendarLocales.vi = factory()));
}(this, function () { 'use strict';
var vi = {
code: "vi",
week: {
dow: 1,
doy: 4 // The week that contains Jan 4th is the first week of the year.
},
buttonText: {
prev: "Trước",
next: "Tiếp",
today: "Hôm nay",
month: "Tháng",
week: "Tuần",
day: "Ngày",
list: "Lịch biểu"
},
weekLabel: "Tu",
allDayText: "Cả ngày",
eventLimitText: function (n) {
return "+ thêm " + n;
},
noEventsMessage: "Không có sự kiện để hiển thị"
};
return vi;
}));
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
typeof define === 'function' && define.amd ? define(factory) :
(global = global || self, (global.FullCalendarLocales = global.FullCalendarLocales || {}, global.FullCalendarLocales['zh-cn'] = factory()));
}(this, function () { 'use strict';
var zhCn = {
code: "zh-cn",
week: {
// GB/T 7408-1994《数据元和交换格式·信息交换·日期和时间表示法》与ISO 8601:1988等效
dow: 1,
doy: 4 // The week that contains Jan 4th is the first week of the year.
},
buttonText: {
prev: "上月",
next: "下月",
today: "今天",
month: "",
week: "",
day: "",
list: "日程"
},
weekLabel: "",
allDayText: "全天",
eventLimitText: function (n) {
return "另外 " + n + "";
},
noEventsMessage: "没有事件显示"
};
return zhCn;
}));
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
typeof define === 'function' && define.amd ? define(factory) :
(global = global || self, (global.FullCalendarLocales = global.FullCalendarLocales || {}, global.FullCalendarLocales['zh-tw'] = factory()));
}(this, function () { 'use strict';
var zhTw = {
code: "zh-tw",
buttonText: {
prev: "上月",
next: "下月",
today: "今天",
month: "",
week: "",
day: "",
list: "活動列表"
},
weekLabel: "",
allDayText: "整天",
eventLimitText: '顯示更多',
noEventsMessage: "没有任何活動"
};
return zhTw;
}));
@charset "UTF-8";
.fc {
direction: ltr;
text-align: left;
}
.fc-rtl {
text-align: right;
}
body .fc {
/* extra precedence to overcome jqui */
font-size: 1em;
}
/* Colors
--------------------------------------------------------------------------------------------------*/
.fc-highlight {
/* when user is selecting cells */
background: #bce8f1;
opacity: 0.3;
}
.fc-bgevent {
/* default look for background events */
background: #8fdf82;
opacity: 0.3;
}
.fc-nonbusiness {
/* default look for non-business-hours areas */
/* will inherit .fc-bgevent's styles */
background: #d7d7d7;
}
/* Popover
--------------------------------------------------------------------------------------------------*/
.fc-popover {
position: absolute;
box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
}
.fc-popover .fc-header {
/* TODO: be more consistent with fc-head/fc-body */
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
padding: 2px 4px;
}
.fc-rtl .fc-popover .fc-header {
flex-direction: row-reverse;
}
.fc-popover .fc-header .fc-title {
margin: 0 2px;
}
.fc-popover .fc-header .fc-close {
cursor: pointer;
opacity: 0.65;
font-size: 1.1em;
}
/* Misc Reusable Components
--------------------------------------------------------------------------------------------------*/
.fc-divider {
border-style: solid;
border-width: 1px;
}
hr.fc-divider {
height: 0;
margin: 0;
padding: 0 0 2px;
/* height is unreliable across browsers, so use padding */
border-width: 1px 0;
}
.fc-bg,
.fc-bgevent-skeleton,
.fc-highlight-skeleton,
.fc-mirror-skeleton {
/* these element should always cling to top-left/right corners */
position: absolute;
top: 0;
left: 0;
right: 0;
}
.fc-bg {
bottom: 0;
/* strech bg to bottom edge */
}
.fc-bg table {
height: 100%;
/* strech bg to bottom edge */
}
/* Tables
--------------------------------------------------------------------------------------------------*/
.fc table {
width: 100%;
box-sizing: border-box;
/* fix scrollbar issue in firefox */
table-layout: fixed;
border-collapse: collapse;
border-spacing: 0;
font-size: 1em;
/* normalize cross-browser */
}
.fc th {
text-align: center;
}
.fc th,
.fc td {
border-style: solid;
border-width: 1px;
padding: 0;
vertical-align: top;
}
.fc td.fc-today {
border-style: double;
/* overcome neighboring borders */
}
/* Internal Nav Links
--------------------------------------------------------------------------------------------------*/
a[data-goto] {
cursor: pointer;
}
a[data-goto]:hover {
text-decoration: underline;
}
/* Fake Table Rows
--------------------------------------------------------------------------------------------------*/
.fc .fc-row {
/* extra precedence to overcome themes forcing a 1px border */
/* no visible border by default. but make available if need be (scrollbar width compensation) */
border-style: solid;
border-width: 0;
}
.fc-row table {
/* don't put left/right border on anything within a fake row.
the outer tbody will worry about this */
border-left: 0 hidden transparent;
border-right: 0 hidden transparent;
/* no bottom borders on rows */
border-bottom: 0 hidden transparent;
}
.fc-row:first-child table {
border-top: 0 hidden transparent;
/* no top border on first row */
}
/* Day Row (used within the header and the DayGrid)
--------------------------------------------------------------------------------------------------*/
.fc-row {
position: relative;
}
.fc-row .fc-bg {
z-index: 1;
}
/* highlighting cells & background event skeleton */
.fc-row .fc-bgevent-skeleton,
.fc-row .fc-highlight-skeleton {
bottom: 0;
/* stretch skeleton to bottom of row */
}
.fc-row .fc-bgevent-skeleton table,
.fc-row .fc-highlight-skeleton table {
height: 100%;
/* stretch skeleton to bottom of row */
}
.fc-row .fc-highlight-skeleton td,
.fc-row .fc-bgevent-skeleton td {
border-color: transparent;
}
.fc-row .fc-bgevent-skeleton {
z-index: 2;
}
.fc-row .fc-highlight-skeleton {
z-index: 3;
}
/*
row content (which contains day/week numbers and events) as well as "mirror" (which contains
temporary rendered events).
*/
.fc-row .fc-content-skeleton {
position: relative;
z-index: 4;
padding-bottom: 2px;
/* matches the space above the events */
}
.fc-row .fc-mirror-skeleton {
z-index: 5;
}
.fc .fc-row .fc-content-skeleton table,
.fc .fc-row .fc-content-skeleton td,
.fc .fc-row .fc-mirror-skeleton td {
/* see-through to the background below */
/* extra precedence to prevent theme-provided backgrounds */
background: none;
/* in case <td>s are globally styled */
border-color: transparent;
}
.fc-row .fc-content-skeleton td,
.fc-row .fc-mirror-skeleton td {
/* don't put a border between events and/or the day number */
border-bottom: 0;
}
.fc-row .fc-content-skeleton tbody td,
.fc-row .fc-mirror-skeleton tbody td {
/* don't put a border between event cells */
border-top: 0;
}
/* Scrolling Container
--------------------------------------------------------------------------------------------------*/
.fc-scroller {
-webkit-overflow-scrolling: touch;
}
/* TODO: move to timegrid/daygrid */
.fc-scroller > .fc-day-grid,
.fc-scroller > .fc-time-grid {
position: relative;
/* re-scope all positions */
width: 100%;
/* hack to force re-sizing this inner element when scrollbars appear/disappear */
}
/* Global Event Styles
--------------------------------------------------------------------------------------------------*/
.fc-event {
position: relative;
/* for resize handle and other inner positioning */
display: block;
/* make the <a> tag block */
font-size: 0.85em;
line-height: 1.4;
border-radius: 3px;
border: 1px solid #3788d8;
}
.fc-event,
.fc-event-dot {
background-color: #3788d8;
/* default BACKGROUND color */
}
.fc-event,
.fc-event:hover {
color: #fff;
/* default TEXT color */
text-decoration: none;
/* if <a> has an href */
}
.fc-event[href],
.fc-event.fc-draggable {
cursor: pointer;
/* give events with links and draggable events a hand mouse pointer */
}
.fc-not-allowed,
.fc-not-allowed .fc-event {
/* to override an event's custom cursor */
cursor: not-allowed;
}
.fc-event .fc-content {
position: relative;
z-index: 2;
}
/* resizer (cursor AND touch devices) */
.fc-event .fc-resizer {
position: absolute;
z-index: 4;
}
/* resizer (touch devices) */
.fc-event .fc-resizer {
display: none;
}
.fc-event.fc-allow-mouse-resize .fc-resizer,
.fc-event.fc-selected .fc-resizer {
/* only show when hovering or selected (with touch) */
display: block;
}
/* hit area */
.fc-event.fc-selected .fc-resizer:before {
/* 40x40 touch area */
content: "";
position: absolute;
z-index: 9999;
/* user of this util can scope within a lower z-index */
top: 50%;
left: 50%;
width: 40px;
height: 40px;
margin-left: -20px;
margin-top: -20px;
}
/* Event Selection (only for touch devices)
--------------------------------------------------------------------------------------------------*/
.fc-event.fc-selected {
z-index: 9999 !important;
/* overcomes inline z-index */
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}
.fc-event.fc-selected:after {
content: "";
position: absolute;
z-index: 1;
/* same z-index as fc-bg, behind text */
/* overcome the borders */
top: -1px;
right: -1px;
bottom: -1px;
left: -1px;
/* darkening effect */
background: #000;
opacity: 0.25;
}
/* Event Dragging
--------------------------------------------------------------------------------------------------*/
.fc-event.fc-dragging.fc-selected {
box-shadow: 0 2px 7px rgba(0, 0, 0, 0.3);
}
.fc-event.fc-dragging:not(.fc-selected) {
opacity: 0.75;
}
/* Horizontal Events
--------------------------------------------------------------------------------------------------*/
/* bigger touch area when selected */
.fc-h-event.fc-selected:before {
content: "";
position: absolute;
z-index: 3;
/* below resizers */
top: -10px;
bottom: -10px;
left: 0;
right: 0;
}
/* events that are continuing to/from another week. kill rounded corners and butt up against edge */
.fc-ltr .fc-h-event.fc-not-start,
.fc-rtl .fc-h-event.fc-not-end {
margin-left: 0;
border-left-width: 0;
padding-left: 1px;
/* replace the border with padding */
border-top-left-radius: 0;
border-bottom-left-radius: 0;
}
.fc-ltr .fc-h-event.fc-not-end,
.fc-rtl .fc-h-event.fc-not-start {
margin-right: 0;
border-right-width: 0;
padding-right: 1px;
/* replace the border with padding */
border-top-right-radius: 0;
border-bottom-right-radius: 0;
}
/* resizer (cursor AND touch devices) */
/* left resizer */
.fc-ltr .fc-h-event .fc-start-resizer,
.fc-rtl .fc-h-event .fc-end-resizer {
cursor: w-resize;
left: -1px;
/* overcome border */
}
/* right resizer */
.fc-ltr .fc-h-event .fc-end-resizer,
.fc-rtl .fc-h-event .fc-start-resizer {
cursor: e-resize;
right: -1px;
/* overcome border */
}
/* resizer (mouse devices) */
.fc-h-event.fc-allow-mouse-resize .fc-resizer {
width: 7px;
top: -1px;
/* overcome top border */
bottom: -1px;
/* overcome bottom border */
}
/* resizer (touch devices) */
.fc-h-event.fc-selected .fc-resizer {
/* 8x8 little dot */
border-radius: 4px;
border-width: 1px;
width: 6px;
height: 6px;
border-style: solid;
border-color: inherit;
background: #fff;
/* vertically center */
top: 50%;
margin-top: -4px;
}
/* left resizer */
.fc-ltr .fc-h-event.fc-selected .fc-start-resizer,
.fc-rtl .fc-h-event.fc-selected .fc-end-resizer {
margin-left: -4px;
/* centers the 8x8 dot on the left edge */
}
/* right resizer */
.fc-ltr .fc-h-event.fc-selected .fc-end-resizer,
.fc-rtl .fc-h-event.fc-selected .fc-start-resizer {
margin-right: -4px;
/* centers the 8x8 dot on the right edge */
}
/* DayGrid events
----------------------------------------------------------------------------------------------------
We use the full "fc-day-grid-event" class instead of using descendants because the event won't
be a descendant of the grid when it is being dragged.
*/
.fc-day-grid-event {
margin: 1px 2px 0;
/* spacing between events and edges */
padding: 0 1px;
}
tr:first-child > td > .fc-day-grid-event {
margin-top: 2px;
/* a little bit more space before the first event */
}
.fc-mirror-skeleton tr:first-child > td > .fc-day-grid-event {
margin-top: 0;
/* except for mirror skeleton */
}
.fc-day-grid-event .fc-content {
/* force events to be one-line tall */
white-space: nowrap;
overflow: hidden;
}
.fc-day-grid-event .fc-time {
font-weight: bold;
}
/* resizer (cursor devices) */
/* left resizer */
.fc-ltr .fc-day-grid-event.fc-allow-mouse-resize .fc-start-resizer,
.fc-rtl .fc-day-grid-event.fc-allow-mouse-resize .fc-end-resizer {
margin-left: -2px;
/* to the day cell's edge */
}
/* right resizer */
.fc-ltr .fc-day-grid-event.fc-allow-mouse-resize .fc-end-resizer,
.fc-rtl .fc-day-grid-event.fc-allow-mouse-resize .fc-start-resizer {
margin-right: -2px;
/* to the day cell's edge */
}
/* Event Limiting
--------------------------------------------------------------------------------------------------*/
/* "more" link that represents hidden events */
a.fc-more {
margin: 1px 3px;
font-size: 0.85em;
cursor: pointer;
text-decoration: none;
}
a.fc-more:hover {
text-decoration: underline;
}
.fc-limited {
/* rows and cells that are hidden because of a "more" link */
display: none;
}
/* popover that appears when "more" link is clicked */
.fc-day-grid .fc-row {
z-index: 1;
/* make the "more" popover one higher than this */
}
.fc-more-popover {
z-index: 2;
width: 220px;
}
.fc-more-popover .fc-event-container {
padding: 10px;
}
/* Now Indicator
--------------------------------------------------------------------------------------------------*/
.fc-now-indicator {
position: absolute;
border: 0 solid red;
}
/* Utilities
--------------------------------------------------------------------------------------------------*/
.fc-unselectable {
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
-webkit-touch-callout: none;
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
/*
TODO: more distinction between this file and common.css
*/
/* Colors
--------------------------------------------------------------------------------------------------*/
.fc-unthemed th,
.fc-unthemed td,
.fc-unthemed thead,
.fc-unthemed tbody,
.fc-unthemed .fc-divider,
.fc-unthemed .fc-row,
.fc-unthemed .fc-content,
.fc-unthemed .fc-popover,
.fc-unthemed .fc-list-view,
.fc-unthemed .fc-list-heading td {
border-color: #ddd;
}
.fc-unthemed .fc-popover {
background-color: #fff;
}
.fc-unthemed .fc-divider,
.fc-unthemed .fc-popover .fc-header,
.fc-unthemed .fc-list-heading td {
background: #eee;
}
.fc-unthemed td.fc-today {
background: #fcf8e3;
}
.fc-unthemed .fc-disabled-day {
background: #d7d7d7;
opacity: 0.3;
}
/* Icons
--------------------------------------------------------------------------------------------------
from https://feathericons.com/ and built with IcoMoon
*/
@font-face {
font-family: "fcicons";
src: url("data:application/x-font-ttf;charset=utf-8;base64,AAEAAAALAIAAAwAwT1MvMg8SBfAAAAC8AAAAYGNtYXAXVtKNAAABHAAAAFRnYXNwAAAAEAAAAXAAAAAIZ2x5ZgYydxIAAAF4AAAFNGhlYWQUJ7cIAAAGrAAAADZoaGVhB20DzAAABuQAAAAkaG10eCIABhQAAAcIAAAALGxvY2ED4AU6AAAHNAAAABhtYXhwAA8AjAAAB0wAAAAgbmFtZXsr690AAAdsAAABhnBvc3QAAwAAAAAI9AAAACAAAwPAAZAABQAAApkCzAAAAI8CmQLMAAAB6wAzAQkAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAABAAADpBgPA/8AAQAPAAEAAAAABAAAAAAAAAAAAAAAgAAAAAAADAAAAAwAAABwAAQADAAAAHAADAAEAAAAcAAQAOAAAAAoACAACAAIAAQAg6Qb//f//AAAAAAAg6QD//f//AAH/4xcEAAMAAQAAAAAAAAAAAAAAAQAB//8ADwABAAAAAAAAAAAAAgAANzkBAAAAAAEAAAAAAAAAAAACAAA3OQEAAAAAAQAAAAAAAAAAAAIAADc5AQAAAAABAWIAjQKeAskAEwAAJSc3NjQnJiIHAQYUFwEWMjc2NCcCnuLiDQ0MJAz/AA0NAQAMJAwNDcni4gwjDQwM/wANIwz/AA0NDCMNAAAAAQFiAI0CngLJABMAACUBNjQnASYiBwYUHwEHBhQXFjI3AZ4BAA0N/wAMJAwNDeLiDQ0MJAyNAQAMIw0BAAwMDSMM4uINIwwNDQAAAAIA4gC3Ax4CngATACcAACUnNzY0JyYiDwEGFB8BFjI3NjQnISc3NjQnJiIPAQYUHwEWMjc2NCcB87e3DQ0MIw3VDQ3VDSMMDQ0BK7e3DQ0MJAzVDQ3VDCQMDQ3zuLcMJAwNDdUNIwzWDAwNIwy4twwkDA0N1Q0jDNYMDA0jDAAAAgDiALcDHgKeABMAJwAAJTc2NC8BJiIHBhQfAQcGFBcWMjchNzY0LwEmIgcGFB8BBwYUFxYyNwJJ1Q0N1Q0jDA0Nt7cNDQwjDf7V1Q0N1QwkDA0Nt7cNDQwkDLfWDCMN1Q0NDCQMt7gMIw0MDNYMIw3VDQ0MJAy3uAwjDQwMAAADAFUAAAOrA1UAMwBoAHcAABMiBgcOAQcOAQcOARURFBYXHgEXHgEXHgEzITI2Nz4BNz4BNz4BNRE0JicuAScuAScuASMFITIWFx4BFx4BFx4BFREUBgcOAQcOAQcOASMhIiYnLgEnLgEnLgE1ETQ2Nz4BNz4BNz4BMxMhMjY1NCYjISIGFRQWM9UNGAwLFQkJDgUFBQUFBQ4JCRULDBgNAlYNGAwLFQkJDgUFBQUFBQ4JCRULDBgN/aoCVgQIBAQHAwMFAQIBAQIBBQMDBwQECAT9qgQIBAQHAwMFAQIBAQIBBQMDBwQECASAAVYRGRkR/qoRGRkRA1UFBAUOCQkVDAsZDf2rDRkLDBUJCA4FBQUFBQUOCQgVDAsZDQJVDRkLDBUJCQ4FBAVVAgECBQMCBwQECAX9qwQJAwQHAwMFAQICAgIBBQMDBwQDCQQCVQUIBAQHAgMFAgEC/oAZEhEZGRESGQAAAAADAFUAAAOrA1UAMwBoAIkAABMiBgcOAQcOAQcOARURFBYXHgEXHgEXHgEzITI2Nz4BNz4BNz4BNRE0JicuAScuAScuASMFITIWFx4BFx4BFx4BFREUBgcOAQcOAQcOASMhIiYnLgEnLgEnLgE1ETQ2Nz4BNz4BNz4BMxMzFRQWMzI2PQEzMjY1NCYrATU0JiMiBh0BIyIGFRQWM9UNGAwLFQkJDgUFBQUFBQ4JCRULDBgNAlYNGAwLFQkJDgUFBQUFBQ4JCRULDBgN/aoCVgQIBAQHAwMFAQIBAQIBBQMDBwQECAT9qgQIBAQHAwMFAQIBAQIBBQMDBwQECASAgBkSEhmAERkZEYAZEhIZgBEZGREDVQUEBQ4JCRUMCxkN/asNGQsMFQkIDgUFBQUFBQ4JCBUMCxkNAlUNGQsMFQkJDgUEBVUCAQIFAwIHBAQIBf2rBAkDBAcDAwUBAgICAgEFAwMHBAMJBAJVBQgEBAcCAwUCAQL+gIASGRkSgBkSERmAEhkZEoAZERIZAAABAOIAjQMeAskAIAAAExcHBhQXFjI/ARcWMjc2NC8BNzY0JyYiDwEnJiIHBhQX4uLiDQ0MJAzi4gwkDA0N4uINDQwkDOLiDCQMDQ0CjeLiDSMMDQ3h4Q0NDCMN4uIMIw0MDOLiDAwNIwwAAAABAAAAAQAAa5n0y18PPPUACwQAAAAAANivOVsAAAAA2K85WwAAAAADqwNVAAAACAACAAAAAAAAAAEAAAPA/8AAAAQAAAAAAAOrAAEAAAAAAAAAAAAAAAAAAAALBAAAAAAAAAAAAAAAAgAAAAQAAWIEAAFiBAAA4gQAAOIEAABVBAAAVQQAAOIAAAAAAAoAFAAeAEQAagCqAOoBngJkApoAAQAAAAsAigADAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAA4ArgABAAAAAAABAAcAAAABAAAAAAACAAcAYAABAAAAAAADAAcANgABAAAAAAAEAAcAdQABAAAAAAAFAAsAFQABAAAAAAAGAAcASwABAAAAAAAKABoAigADAAEECQABAA4ABwADAAEECQACAA4AZwADAAEECQADAA4APQADAAEECQAEAA4AfAADAAEECQAFABYAIAADAAEECQAGAA4AUgADAAEECQAKADQApGZjaWNvbnMAZgBjAGkAYwBvAG4Ac1ZlcnNpb24gMS4wAFYAZQByAHMAaQBvAG4AIAAxAC4AMGZjaWNvbnMAZgBjAGkAYwBvAG4Ac2ZjaWNvbnMAZgBjAGkAYwBvAG4Ac1JlZ3VsYXIAUgBlAGcAdQBsAGEAcmZjaWNvbnMAZgBjAGkAYwBvAG4Ac0ZvbnQgZ2VuZXJhdGVkIGJ5IEljb01vb24uAEYAbwBuAHQAIABnAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAEkAYwBvAE0AbwBvAG4ALgAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=") format("truetype");
font-weight: normal;
font-style: normal;
}
.fc-icon {
/* use !important to prevent issues with browser extensions that change fonts */
font-family: "fcicons" !important;
speak: none;
font-style: normal;
font-weight: normal;
font-variant: normal;
text-transform: none;
line-height: 1;
/* Better Font Rendering =========== */
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.fc-icon-chevron-left:before {
content: "";
}
.fc-icon-chevron-right:before {
content: "";
}
.fc-icon-chevrons-left:before {
content: "";
}
.fc-icon-chevrons-right:before {
content: "";
}
.fc-icon-minus-square:before {
content: "";
}
.fc-icon-plus-square:before {
content: "";
}
.fc-icon-x:before {
content: "";
}
.fc-icon {
display: inline-block;
width: 1em;
height: 1em;
text-align: center;
}
/* Buttons
--------------------------------------------------------------------------------------------------
Lots taken from Flatly (MIT): https://bootswatch.com/4/flatly/bootstrap.css
*/
/* reset */
.fc-button {
border-radius: 0;
overflow: visible;
text-transform: none;
margin: 0;
font-family: inherit;
font-size: inherit;
line-height: inherit;
}
.fc-button:focus {
outline: 1px dotted;
outline: 5px auto -webkit-focus-ring-color;
}
.fc-button {
-webkit-appearance: button;
}
.fc-button:not(:disabled) {
cursor: pointer;
}
.fc-button::-moz-focus-inner {
padding: 0;
border-style: none;
}
/* theme */
.fc-button {
display: inline-block;
font-weight: 400;
color: #212529;
text-align: center;
vertical-align: middle;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
background-color: transparent;
border: 1px solid transparent;
padding: 0.4em 0.65em;
font-size: 1em;
line-height: 1.5;
border-radius: 0.25em;
}
.fc-button:hover {
color: #212529;
text-decoration: none;
}
.fc-button:focus {
outline: 0;
-webkit-box-shadow: 0 0 0 0.2rem rgba(44, 62, 80, 0.25);
box-shadow: 0 0 0 0.2rem rgba(44, 62, 80, 0.25);
}
.fc-button:disabled {
opacity: 0.65;
}
/* "primary" coloring */
.fc-button-primary {
color: #fff;
background-color: #2C3E50;
border-color: #2C3E50;
}
.fc-button-primary:hover {
color: #fff;
background-color: #1e2b37;
border-color: #1a252f;
}
.fc-button-primary:focus {
-webkit-box-shadow: 0 0 0 0.2rem rgba(76, 91, 106, 0.5);
box-shadow: 0 0 0 0.2rem rgba(76, 91, 106, 0.5);
}
.fc-button-primary:disabled {
color: #fff;
background-color: #2C3E50;
border-color: #2C3E50;
}
.fc-button-primary:not(:disabled):active,
.fc-button-primary:not(:disabled).fc-button-active {
color: #fff;
background-color: #1a252f;
border-color: #151e27;
}
.fc-button-primary:not(:disabled):active:focus,
.fc-button-primary:not(:disabled).fc-button-active:focus {
-webkit-box-shadow: 0 0 0 0.2rem rgba(76, 91, 106, 0.5);
box-shadow: 0 0 0 0.2rem rgba(76, 91, 106, 0.5);
}
/* icons within buttons */
.fc-button .fc-icon {
vertical-align: middle;
font-size: 1.5em;
}
/* Buttons Groups
--------------------------------------------------------------------------------------------------*/
.fc-button-group {
position: relative;
display: -webkit-inline-box;
display: -ms-inline-flexbox;
display: inline-flex;
vertical-align: middle;
}
.fc-button-group > .fc-button {
position: relative;
-webkit-box-flex: 1;
-ms-flex: 1 1 auto;
flex: 1 1 auto;
}
.fc-button-group > .fc-button:hover {
z-index: 1;
}
.fc-button-group > .fc-button:focus,
.fc-button-group > .fc-button:active,
.fc-button-group > .fc-button.fc-button-active {
z-index: 1;
}
.fc-button-group > .fc-button:not(:first-child) {
margin-left: -1px;
}
.fc-button-group > .fc-button:not(:last-child) {
border-top-right-radius: 0;
border-bottom-right-radius: 0;
}
.fc-button-group > .fc-button:not(:first-child) {
border-top-left-radius: 0;
border-bottom-left-radius: 0;
}
/* Popover
--------------------------------------------------------------------------------------------------*/
.fc-unthemed .fc-popover {
border-width: 1px;
border-style: solid;
}
/* List View
--------------------------------------------------------------------------------------------------*/
.fc-unthemed .fc-list-item:hover td {
background-color: #f5f5f5;
}
/* Toolbar
--------------------------------------------------------------------------------------------------*/
.fc-toolbar {
display: flex;
justify-content: space-between;
align-items: center;
}
.fc-toolbar.fc-header-toolbar {
margin-bottom: 1.5em;
}
.fc-toolbar.fc-footer-toolbar {
margin-top: 1.5em;
}
/* inner content */
.fc-toolbar > * > :not(:first-child) {
margin-left: 0.75em;
}
.fc-toolbar h2 {
font-size: 1.75em;
margin: 0;
}
/* View Structure
--------------------------------------------------------------------------------------------------*/
.fc-view-container {
position: relative;
}
/* undo twitter bootstrap's box-sizing rules. normalizes positioning techniques */
/* don't do this for the toolbar because we'll want bootstrap to style those buttons as some pt */
.fc-view-container *,
.fc-view-container *:before,
.fc-view-container *:after {
-webkit-box-sizing: content-box;
-moz-box-sizing: content-box;
box-sizing: content-box;
}
.fc-view,
.fc-view > table {
/* so dragged elements can be above the view's main element */
position: relative;
z-index: 1;
}
@media print {
.fc {
max-width: 100% !important;
}
/* Global Event Restyling
--------------------------------------------------------------------------------------------------*/
.fc-event {
background: #fff !important;
color: #000 !important;
page-break-inside: avoid;
}
.fc-event .fc-resizer {
display: none;
}
/* Table & Day-Row Restyling
--------------------------------------------------------------------------------------------------*/
.fc th,
.fc td,
.fc hr,
.fc thead,
.fc tbody,
.fc-row {
border-color: #ccc !important;
background: #fff !important;
}
/* kill the overlaid, absolutely-positioned components */
/* common... */
.fc-bg,
.fc-bgevent-skeleton,
.fc-highlight-skeleton,
.fc-mirror-skeleton,
.fc-bgevent-container,
.fc-business-container,
.fc-highlight-container,
.fc-mirror-container {
display: none;
}
/* don't force a min-height on rows (for DayGrid) */
.fc tbody .fc-row {
height: auto !important;
/* undo height that JS set in distributeHeight */
min-height: 0 !important;
/* undo the min-height from each view's specific stylesheet */
}
.fc tbody .fc-row .fc-content-skeleton {
position: static;
/* undo .fc-rigid */
padding-bottom: 0 !important;
/* use a more border-friendly method for this... */
}
.fc tbody .fc-row .fc-content-skeleton tbody tr:last-child td {
/* only works in newer browsers */
padding-bottom: 1em;
/* ...gives space within the skeleton. also ensures min height in a way */
}
.fc tbody .fc-row .fc-content-skeleton table {
/* provides a min-height for the row, but only effective for IE, which exaggerates this value,
making it look more like 3em. for other browers, it will already be this tall */
height: 1em;
}
/* Undo month-view event limiting. Display all events and hide the "more" links
--------------------------------------------------------------------------------------------------*/
.fc-more-cell,
.fc-more {
display: none !important;
}
.fc tr.fc-limited {
display: table-row !important;
}
.fc td.fc-limited {
display: table-cell !important;
}
.fc-popover {
display: none;
/* never display the "more.." popover in print mode */
}
/* TimeGrid Restyling
--------------------------------------------------------------------------------------------------*/
/* undo the min-height 100% trick used to fill the container's height */
.fc-time-grid {
min-height: 0 !important;
}
/* don't display the side axis at all ("all-day" and time cells) */
.fc-timeGrid-view .fc-axis {
display: none;
}
/* don't display the horizontal lines */
.fc-slats,
.fc-time-grid hr {
/* this hr is used when height is underused and needs to be filled */
display: none !important;
/* important overrides inline declaration */
}
/* let the container that holds the events be naturally positioned and create real height */
.fc-time-grid .fc-content-skeleton {
position: static;
}
/* in case there are no events, we still want some height */
.fc-time-grid .fc-content-skeleton table {
height: 4em;
}
/* kill the horizontal spacing made by the event container. event margins will be done below */
.fc-time-grid .fc-event-container {
margin: 0 !important;
}
/* TimeGrid *Event* Restyling
--------------------------------------------------------------------------------------------------*/
/* naturally position events, vertically stacking them */
.fc-time-grid .fc-event {
position: static !important;
margin: 3px 2px !important;
}
/* for events that continue to a future day, give the bottom border back */
.fc-time-grid .fc-event.fc-not-end {
border-bottom-width: 1px !important;
}
/* indicate the event continues via "..." text */
.fc-time-grid .fc-event.fc-not-end:after {
content: "...";
}
/* for events that are continuations from previous days, give the top border back */
.fc-time-grid .fc-event.fc-not-start {
border-top-width: 1px !important;
}
/* indicate the event is a continuation via "..." text */
.fc-time-grid .fc-event.fc-not-start:before {
content: "...";
}
/* time */
/* undo a previous declaration and let the time text span to a second line */
.fc-time-grid .fc-event .fc-time {
white-space: normal !important;
}
/* hide the the time that is normally displayed... */
.fc-time-grid .fc-event .fc-time span {
display: none;
}
/* ...replace it with a more verbose version (includes AM/PM) stored in an html attribute */
.fc-time-grid .fc-event .fc-time:after {
content: attr(data-full);
}
/* Vertical Scroller & Containers
--------------------------------------------------------------------------------------------------*/
/* kill the scrollbars and allow natural height */
.fc-scroller,
.fc-day-grid-container,
.fc-time-grid-container {
/* */
overflow: visible !important;
height: auto !important;
}
/* kill the horizontal border/padding used to compensate for scrollbars */
.fc-row {
border: 0 !important;
margin: 0 !important;
}
/* Button Controls
--------------------------------------------------------------------------------------------------*/
.fc-button-group,
.fc button {
display: none;
/* don't display any button-related controls */
}
}
// Generated by dts-bundle v0.7.3-fork.1
// Dependencies for this module:
// ../../../../../@fullcalendar/core
declare module '@fullcalendar/core' {
export const version = "<%= version %>";
export { OptionsInput } from '@fullcalendar/core/types/input-types';
export { EventInput, EventDef, EventDefHash, EventInstance, EventInstanceHash, parseEventDef, createEventInstance, EventTuple } from '@fullcalendar/core/structs/event';
export { BusinessHoursInput, parseBusinessHours } from '@fullcalendar/core/structs/business-hours';
export { applyAll, debounce, padStart, isInt, capitaliseFirstLetter, parseFieldSpecs, compareByFieldSpecs, compareByFieldSpec, flexibleCompare, computeVisibleDayRange, refineProps, matchCellWidths, uncompensateScroll, compensateScroll, subtractInnerElHeight, isMultiDayRange, distributeHeight, undistributeHeight, preventSelection, allowSelection, preventContextMenu, allowContextMenu, compareNumbers, enableCursor, disableCursor, diffDates } from '@fullcalendar/core/util/misc';
export { htmlEscape, cssToStr } from '@fullcalendar/core/util/html';
export { removeExact, isArraysEqual } from '@fullcalendar/core/util/array';
export { memoize, memoizeOutput } from '@fullcalendar/core/util/memoize';
export { memoizeRendering, MemoizedRendering } from '@fullcalendar/core/component/memoized-rendering';
export { intersectRects, Rect, pointInsideRect, constrainPoint, getRectCenter, diffPoints, Point, translateRect } from '@fullcalendar/core/util/geom';
export { mapHash, filterHash, isPropsEqual } from '@fullcalendar/core/util/object';
export { findElements, findChildren, htmlToElement, createElement, insertAfterElement, prependToElement, removeElement, appendToElement, applyStyle, applyStyleProp, elementMatches, elementClosest, forceClassName } from '@fullcalendar/core/util/dom-manip';
export { EventStore, filterEventStoreDefs, createEmptyEventStore, mergeEventStores, getRelevantEvents, eventTupleToStore } from '@fullcalendar/core/structs/event-store';
export { EventUiHash, EventUi, processScopedUiProps, combineEventUis } from '@fullcalendar/core/component/event-ui';
export { default as Splitter, SplittableProps } from '@fullcalendar/core/component/event-splitting';
export { buildGotoAnchorHtml, getAllDayHtml, getDayClasses } from '@fullcalendar/core/component/date-rendering';
export { preventDefault, listenBySelector, whenTransitionDone } from '@fullcalendar/core/util/dom-event';
export { computeInnerRect, computeEdges, computeHeightAndMargins, getClippingParents, computeClippingRect, computeRect } from '@fullcalendar/core/util/dom-geom';
export { unpromisify } from '@fullcalendar/core/util/promise';
export { default as EmitterMixin, EmitterInterface } from '@fullcalendar/core/common/EmitterMixin';
export { DateRange, rangeContainsMarker, intersectRanges, rangesEqual, rangesIntersect, rangeContainsRange } from '@fullcalendar/core/datelib/date-range';
export { default as Mixin } from '@fullcalendar/core/common/Mixin';
export { default as PositionCache } from '@fullcalendar/core/common/PositionCache';
export { default as ScrollComponent, ScrollbarWidths } from '@fullcalendar/core/common/ScrollComponent';
export { ScrollController, ElementScrollController, WindowScrollController } from '@fullcalendar/core/common/scroll-controller';
export { default as Theme } from '@fullcalendar/core/theme/Theme';
export { default as Component, ComponentContext } from '@fullcalendar/core/component/Component';
export { default as DateComponent, Seg, EventSegUiInteractionState } from '@fullcalendar/core/component/DateComponent';
export { default as Calendar, DatePointTransform, DateSpanTransform, DateSelectionApi } from '@fullcalendar/core/Calendar';
export { default as View, ViewProps } from '@fullcalendar/core/View';
export { default as FgEventRenderer, buildSegCompareObj } from '@fullcalendar/core/component/renderers/FgEventRenderer';
export { default as FillRenderer } from '@fullcalendar/core/component/renderers/FillRenderer';
export { default as DateProfileGenerator, DateProfile } from '@fullcalendar/core/DateProfileGenerator';
export { ViewDef } from '@fullcalendar/core/structs/view-def';
export { ViewSpec } from '@fullcalendar/core/structs/view-spec';
export { DateSpan, DateSpanApi, DatePointApi, isDateSpansEqual } from '@fullcalendar/core/structs/date-span';
export { DateMarker, addDays, startOfDay, addMs, addWeeks, diffWeeks, diffWholeWeeks, diffWholeDays, diffDayAndTime, diffDays, isValidDate } from '@fullcalendar/core/datelib/marker';
export { Duration, createDuration, isSingleDay, multiplyDuration, addDurations, asRoughMinutes, asRoughSeconds, asRoughMs, wholeDivideDurations, greatestDurationDenominator } from '@fullcalendar/core/datelib/duration';
export { DateEnv, DateMarkerMeta } from '@fullcalendar/core/datelib/env';
export { DateFormatter, createFormatter, VerboseFormattingArg, formatIsoTimeString } from '@fullcalendar/core/datelib/formatting';
export { NamedTimeZoneImpl } from '@fullcalendar/core/datelib/timezone';
export { parse as parseMarker } from '@fullcalendar/core/datelib/parsing';
export { EventSourceDef, EventSource, EventSourceHash } from '@fullcalendar/core/structs/event-source';
export { Interaction, InteractionSettings, interactionSettingsToStore, interactionSettingsStore, InteractionSettingsStore } from '@fullcalendar/core/interactions/interaction';
export { PointerDragEvent } from '@fullcalendar/core/interactions/pointer';
export { Hit } from '@fullcalendar/core/interactions/hit';
export { dateSelectionJoinTransformer } from '@fullcalendar/core/interactions/date-selecting';
export { eventDragMutationMassager, EventDropTransformers } from '@fullcalendar/core/interactions/event-dragging';
export { EventResizeJoinTransforms } from '@fullcalendar/core/interactions/event-resizing';
export { default as ElementDragging } from '@fullcalendar/core/interactions/ElementDragging';
export { formatDate, formatRange } from '@fullcalendar/core/formatting-api';
export { globalDefaults, config } from '@fullcalendar/core/options';
export { RecurringType, ParsedRecurring } from '@fullcalendar/core/structs/recurring-event';
export { DragMetaInput, DragMeta, parseDragMeta } from '@fullcalendar/core/structs/drag-meta';
export { createPlugin, PluginDef, PluginDefInput, ViewPropsTransformer, ViewContainerModifier } from '@fullcalendar/core/plugin-system';
export { reducerFunc, Action, CalendarState } from '@fullcalendar/core/reducers/types';
export { CalendarComponentProps } from '@fullcalendar/core/CalendarComponent';
export { default as DayHeader } from '@fullcalendar/core/common/DayHeader';
export { computeFallbackHeaderFormat, renderDateCell } from '@fullcalendar/core/common/table-utils';
export { default as DaySeries } from '@fullcalendar/core/common/DaySeries';
export { EventInteractionState } from '@fullcalendar/core/interactions/event-interaction-state';
export { EventRenderRange, sliceEventStore, hasBgRendering, getElSeg } from '@fullcalendar/core/component/event-rendering';
export { default as DayTable, DayTableSeg, DayTableCell } from '@fullcalendar/core/common/DayTable';
export { default as Slicer, SlicedProps } from '@fullcalendar/core/common/slicing-utils';
export { EventMutation, applyMutationToEventStore } from '@fullcalendar/core/structs/event-mutation';
export { Constraint, ConstraintInput, AllowFunc, isPropsValid, isInteractionValid } from '@fullcalendar/core/validation';
export { default as EventApi } from '@fullcalendar/core/api/EventApi';
export { default as requestJson } from '@fullcalendar/core/util/requestJson';
}
declare module '@fullcalendar/core/types/input-types' {
import View from '@fullcalendar/core/View';
import {EventInputTransformer, EventSourceInput} from '@fullcalendar/core/structs/event-source';
import {Duration, DurationInput} from '@fullcalendar/core/datelib/duration';
import {DateInput} from '@fullcalendar/core/datelib/env';
import {FormatterInput} from '@fullcalendar/core/datelib/formatting';
import {DateRangeInput} from '@fullcalendar/core/datelib/date-range';
import {BusinessHoursInput} from '@fullcalendar/core/structs/business-hours';
import EventApi from '@fullcalendar/core/api/EventApi';
import {AllowFunc, ConstraintInput, OverlapFunc} from '@fullcalendar/core/validation';
import {PluginDef} from '@fullcalendar/core/plugin-system';
import {LocaleSingularArg, RawLocale} from '@fullcalendar/core/datelib/locale';
export interface ToolbarInput {
left?: string;
center?: string;
right?: string;
}
export interface CustomButtonInput {
text: string;
icon?: string;
themeIcon?: string;
bootstrapFontAwesome?: string;
click(element: HTMLElement): void;
}
export interface ButtonIconsInput {
prev?: string;
next?: string;
prevYear?: string;
nextYear?: string;
}
export interface ButtonTextCompoundInput {
prev?: string;
next?: string;
prevYear?: string;
nextYear?: string;
today?: string;
month?: string;
week?: string;
day?: string;
[viewId: string]: string | undefined;
}
export interface EventSegment {
event: EventApi;
start: Date;
end: Date;
isStart: boolean;
isEnd: boolean;
}
export interface CellInfo {
date: Date;
dayEl: HTMLElement;
moreEl: HTMLElement;
segs: EventSegment[];
hiddenSegs: EventSegment[];
}
export interface DropInfo {
start: Date;
end: Date;
}
export type EventHandlerName = '_init' | 'selectAllow' | 'eventAllow' | 'eventDataTransform' | 'datesRender' | 'datesDestroy' | 'dayRender' | 'windowResize' | 'dateClick' | 'eventClick' | 'eventMouseEnter' | 'eventMouseLeave' | 'select' | 'unselect' | 'loading' | 'eventRender' | 'eventPositioned' | '_eventsPositioned' | 'eventDestroy' | 'eventDragStart' | 'eventDragStop' | 'eventDrop' | '_destroyed' | 'drop' | 'eventResizeStart' | 'eventResizeStop' | 'eventResize' | 'eventReceive' | 'eventLeave' | 'viewSkeletonRender' | 'viewSkeletonDestroy' | '_noEventDrop' | '_noEventResize' | 'eventLimitClick' | 'resourceRender';
export type EventHandlerArgs<T extends EventHandlerName> = Parameters<Extract<OptionsInput[T], (...args: any[]) => any>>;
export type EventHandlerArg<T extends EventHandlerName> = EventHandlerArgs<T>[0];
export interface OptionsInputBase {
header?: boolean | ToolbarInput;
footer?: boolean | ToolbarInput;
customButtons?: {
[name: string]: CustomButtonInput;
};
buttonIcons?: boolean | ButtonIconsInput;
themeSystem?: 'standard' | string;
bootstrapFontAwesome?: boolean | ButtonIconsInput;
firstDay?: number;
dir?: 'ltr' | 'rtl' | 'auto';
weekends?: boolean;
hiddenDays?: number[];
fixedWeekCount?: boolean;
weekNumbers?: boolean;
weekNumbersWithinDays?: boolean;
weekNumberCalculation?: 'local' | 'ISO' | ((m: Date) => number);
businessHours?: BusinessHoursInput;
showNonCurrentDates?: boolean;
height?: number | 'auto' | 'parent' | (() => number);
contentHeight?: number | 'auto' | (() => number);
aspectRatio?: number;
handleWindowResize?: boolean;
windowResizeDelay?: number;
eventLimit?: boolean | number;
eventLimitClick?: 'popover' | 'week' | 'day' | 'timeGridWeek' | 'timeGridDay' | string | ((arg: {
date: Date;
allDay: boolean;
dayEl: HTMLElement;
moreEl: HTMLElement;
segs: any[];
hiddenSegs: any[];
jsEvent: MouseEvent;
view: View;
}) => void);
timeZone?: string | boolean;
now?: DateInput | (() => DateInput);
defaultView?: string;
allDaySlot?: boolean;
allDayText?: string;
slotDuration?: DurationInput;
slotLabelFormat?: FormatterInput;
slotLabelInterval?: DurationInput;
snapDuration?: DurationInput;
scrollTime?: DurationInput;
minTime?: DurationInput;
maxTime?: DurationInput;
slotEventOverlap?: boolean;
listDayFormat?: FormatterInput | boolean;
listDayAltFormat?: FormatterInput | boolean;
noEventsMessage?: string;
defaultDate?: DateInput;
nowIndicator?: boolean;
visibleRange?: ((currentDate: Date) => DateRangeInput) | DateRangeInput;
validRange?: DateRangeInput;
dateIncrement?: DurationInput;
dateAlignment?: string;
duration?: DurationInput;
dayCount?: number;
locales?: RawLocale[];
locale?: LocaleSingularArg;
eventTimeFormat?: FormatterInput;
columnHeader?: boolean;
columnHeaderFormat?: FormatterInput;
columnHeaderText?: string | ((date: DateInput) => string);
columnHeaderHtml?: string | ((date: DateInput) => string);
titleFormat?: FormatterInput;
weekLabel?: string;
displayEventTime?: boolean;
displayEventEnd?: boolean;
eventLimitText?: string | ((eventCnt: number) => string);
dayPopoverFormat?: FormatterInput;
navLinks?: boolean;
navLinkDayClick?: string | ((date: Date, jsEvent: Event) => void);
navLinkWeekClick?: string | ((weekStart: any, jsEvent: Event) => void);
selectable?: boolean;
selectMirror?: boolean;
unselectAuto?: boolean;
unselectCancel?: string;
defaultAllDayEventDuration?: DurationInput;
defaultTimedEventDuration?: DurationInput;
cmdFormatter?: string;
defaultRangeSeparator?: string;
selectConstraint?: ConstraintInput;
selectOverlap?: boolean | OverlapFunc;
selectAllow?: AllowFunc;
editable?: boolean;
eventStartEditable?: boolean;
eventDurationEditable?: boolean;
eventConstraint?: ConstraintInput;
eventOverlap?: boolean | OverlapFunc;
eventAllow?: AllowFunc;
eventClassName?: string[] | string;
eventClassNames?: string[] | string;
eventBackgroundColor?: string;
eventBorderColor?: string;
eventTextColor?: string;
eventColor?: string;
events?: EventSourceInput;
eventSources?: EventSourceInput[];
allDayDefault?: boolean;
startParam?: string;
endParam?: string;
lazyFetching?: boolean;
nextDayThreshold?: DurationInput;
eventOrder?: string | Array<((a: EventApi, b: EventApi) => number) | (string | ((a: EventApi, b: EventApi) => number))>;
rerenderDelay?: number | null;
dragRevertDuration?: number;
dragScroll?: boolean;
longPressDelay?: number;
eventLongPressDelay?: number;
droppable?: boolean;
dropAccept?: string | ((draggable: any) => boolean);
eventDataTransform?: EventInputTransformer;
allDayMaintainDuration?: boolean;
eventResizableFromStart?: boolean;
timeGridEventMinHeight?: number;
allDayHtml?: string;
eventDragMinDistance?: number;
eventSourceFailure?: any;
eventSourceSuccess?: any;
forceEventDuration?: boolean;
progressiveEventRendering?: boolean;
selectLongPressDelay?: number;
selectMinDistance?: number;
timeZoneParam?: string;
titleRangeSeparator?: string;
datesRender?(arg: {
view: View;
el: HTMLElement;
}): void;
datesDestroy?(arg: {
view: View;
el: HTMLElement;
}): void;
dayRender?(arg: {
view: View;
date: Date;
allDay?: boolean;
el: HTMLElement;
}): void;
windowResize?(view: View): void;
dateClick?(arg: {
date: Date;
dateStr: string;
allDay: boolean;
resource?: any;
dayEl: HTMLElement;
jsEvent: MouseEvent;
view: View;
}): void;
eventClick?(arg: {
el: HTMLElement;
event: EventApi;
jsEvent: MouseEvent;
view: View;
}): boolean | void;
eventMouseEnter?(arg: {
el: HTMLElement;
event: EventApi;
jsEvent: MouseEvent;
view: View;
}): void;
eventMouseLeave?(arg: {
el: HTMLElement;
event: EventApi;
jsEvent: MouseEvent;
view: View;
}): void;
select?(arg: {
start: Date;
end: Date;
startStr: string;
endStr: string;
allDay: boolean;
resource?: any;
jsEvent: MouseEvent;
view: View;
}): void;
unselect?(arg: {
view: View;
jsEvent: Event;
}): void;
loading?(isLoading: boolean): void;
eventRender?(arg: {
isMirror: boolean;
isStart: boolean;
isEnd: boolean;
event: EventApi;
el: HTMLElement;
view: View;
}): void;
eventPositioned?(arg: {
isMirror: boolean;
isStart: boolean;
isEnd: boolean;
event: EventApi;
el: HTMLElement;
view: View;
}): void;
_eventsPositioned?(arg: {
view: View;
}): void;
eventDestroy?(arg: {
isMirror: boolean;
event: EventApi;
el: HTMLElement;
view: View;
}): void;
eventDragStart?(arg: {
event: EventApi;
el: HTMLElement;
jsEvent: MouseEvent;
view: View;
}): void;
eventDragStop?(arg: {
event: EventApi;
el: HTMLElement;
jsEvent: MouseEvent;
view: View;
}): void;
eventDrop?(arg: {
el: HTMLElement;
event: EventApi;
oldEvent: EventApi;
delta: Duration;
revert: () => void;
jsEvent: Event;
view: View;
}): void;
eventResizeStart?(arg: {
el: HTMLElement;
event: EventApi;
jsEvent: MouseEvent;
view: View;
}): void;
eventResizeStop?(arg: {
el: HTMLElement;
event: EventApi;
jsEvent: MouseEvent;
view: View;
}): void;
eventResize?(arg: {
el: HTMLElement;
startDelta: Duration;
endDelta: Duration;
prevEvent: EventApi;
event: EventApi;
revert: () => void;
jsEvent: Event;
view: View;
}): void;
drop?(arg: {
date: Date;
dateStr: string;
allDay: boolean;
draggedEl: HTMLElement;
jsEvent: MouseEvent;
view: View;
}): void;
eventReceive?(arg: {
event: EventApi;
draggedEl: HTMLElement;
view: View;
}): void;
eventLeave?(arg: {
draggedEl: HTMLElement;
event: EventApi;
view: View;
}): void;
viewSkeletonRender?(arg: {
el: HTMLElement;
view: View;
}): void;
viewSkeletonDestroy?(arg: {
el: HTMLElement;
view: View;
}): void;
_destroyed?(): void;
_init?(): void;
_noEventDrop?(): void;
_noEventResize?(): void;
resourceRender?(arg: {
resource: any;
el: HTMLElement;
view: View;
}): void;
}
export interface ViewOptionsInput extends OptionsInputBase {
type?: string;
buttonText?: string;
}
export interface OptionsInput extends OptionsInputBase {
buttonText?: ButtonTextCompoundInput;
views?: {
[viewId: string]: ViewOptionsInput;
};
plugins?: (PluginDef | string)[];
}
}
declare module '@fullcalendar/core/structs/event' {
import {DateInput} from '@fullcalendar/core/datelib/env';
import Calendar from '@fullcalendar/core/Calendar';
import {DateRange} from '@fullcalendar/core/datelib/date-range';
import {Duration} from '@fullcalendar/core/datelib/duration';
import {EventUi, UnscopedEventUiInput} from '@fullcalendar/core/component/event-ui';
export type EventRenderingChoice = '' | 'background' | 'inverse-background' | 'none';
export interface EventNonDateInput extends UnscopedEventUiInput {
id?: string | number;
groupId?: string | number;
title?: string;
url?: string;
rendering?: EventRenderingChoice;
extendedProps?: object;
[extendedProp: string]: any;
}
export interface EventDateInput {
start?: DateInput;
end?: DateInput;
date?: DateInput;
allDay?: boolean;
}
export type EventInput = EventNonDateInput & EventDateInput;
export interface EventDef {
defId: string;
sourceId: string;
publicId: string;
groupId: string;
allDay: boolean;
hasEnd: boolean;
recurringDef: {
typeId: number;
typeData: any;
duration: Duration | null;
} | null;
title: string;
url: string;
rendering: EventRenderingChoice;
ui: EventUi;
extendedProps: any;
}
export interface EventInstance {
instanceId: string;
defId: string;
range: DateRange;
forcedStartTzo: number | null;
forcedEndTzo: number | null;
}
export interface EventTuple {
def: EventDef;
instance: EventInstance | null;
}
export type EventInstanceHash = {
[instanceId: string]: EventInstance;
};
export type EventDefHash = {
[defId: string]: EventDef;
};
export const NON_DATE_PROPS: {
id: StringConstructor;
groupId: StringConstructor;
title: StringConstructor;
url: StringConstructor;
rendering: StringConstructor;
extendedProps: any;
};
export const DATE_PROPS: {
start: any;
date: any;
end: any;
allDay: any;
};
export function parseEvent(raw: EventInput, sourceId: string, calendar: Calendar, allowOpenRange?: boolean): EventTuple | null;
export function parseEventDef(raw: EventNonDateInput, sourceId: string, allDay: boolean, hasEnd: boolean, calendar: Calendar): EventDef;
export type eventDefParserFunc = (def: EventDef, props: any, leftovers: any) => void;
export function createEventInstance(defId: string, range: DateRange, forcedStartTzo?: number, forcedEndTzo?: number): EventInstance;
}
declare module '@fullcalendar/core/structs/business-hours' {
import Calendar from '@fullcalendar/core/Calendar';
import {EventInput} from '@fullcalendar/core/structs/event';
import {EventStore} from '@fullcalendar/core/structs/event-store';
export type BusinessHoursInput = boolean | EventInput | EventInput[];
export function parseBusinessHours(input: BusinessHoursInput, calendar: Calendar): EventStore;
}
declare module '@fullcalendar/core/util/misc' {
import {DateMarker} from '@fullcalendar/core/datelib/marker';
import {Duration} from '@fullcalendar/core/datelib/duration';
import {DateEnv} from '@fullcalendar/core/datelib/env';
import {DateRange, OpenDateRange} from '@fullcalendar/core/datelib/date-range';
export function compensateScroll(rowEl: HTMLElement, scrollbarWidths: any): void;
export function uncompensateScroll(rowEl: HTMLElement): void;
export function disableCursor(): void;
export function enableCursor(): void;
export function distributeHeight(els: HTMLElement[], availableHeight: any, shouldRedistribute: any): void;
export function undistributeHeight(els: HTMLElement[]): void;
export function matchCellWidths(els: HTMLElement[]): number;
export function subtractInnerElHeight(outerEl: HTMLElement, innerEl: HTMLElement): number;
export function preventSelection(el: HTMLElement): void;
export function allowSelection(el: HTMLElement): void;
export function preventContextMenu(el: HTMLElement): void;
export function allowContextMenu(el: HTMLElement): void;
export function parseFieldSpecs(input: any): any[];
export function compareByFieldSpecs(obj0: any, obj1: any, fieldSpecs: any): any;
export function compareByFieldSpec(obj0: any, obj1: any, fieldSpec: any): any;
export function flexibleCompare(a: any, b: any): number;
export function capitaliseFirstLetter(str: any): any;
export function padStart(val: any, len: any): string;
export function compareNumbers(a: any, b: any): number;
export function isInt(n: any): boolean;
export function applyAll(functions: any, thisObj: any, args: any): any;
export function firstDefined(...args: any[]): any;
export function debounce(func: any, wait: any): () => any;
export type GenericHash = {
[key: string]: any;
};
export function refineProps(rawProps: GenericHash, processors: GenericHash, defaults?: GenericHash, leftoverProps?: GenericHash): GenericHash;
export function computeAlignedDayRange(timedRange: DateRange): DateRange;
export function computeVisibleDayRange(timedRange: OpenDateRange, nextDayThreshold?: Duration): OpenDateRange;
export function isMultiDayRange(range: DateRange): boolean;
export function diffDates(date0: DateMarker, date1: DateMarker, dateEnv: DateEnv, largeUnit?: string): Duration;
}
declare module '@fullcalendar/core/util/html' {
export function htmlEscape(s: any): string;
export function cssToStr(cssProps: any): string;
export function attrsToStr(attrs: any): string;
export type ClassNameInput = string | string[];
export function parseClassName(raw: ClassNameInput): string[];
}
declare module '@fullcalendar/core/util/array' {
export function removeMatching(array: any, testFunc: any): number;
export function removeExact(array: any, exactVal: any): number;
export function isArraysEqual(a0: any, a1: any): boolean;
}
declare module '@fullcalendar/core/util/memoize' {
export function memoize<T>(workerFunc: T): T;
export function memoizeOutput<T>(workerFunc: T, equalityFunc: (output0: any, output1: any) => boolean): T;
}
declare module '@fullcalendar/core/component/memoized-rendering' {
export interface MemoizedRendering<ArgsType extends any[]> {
(...args: ArgsType): void;
unrender: () => void;
dependents: MemoizedRendering<any>[];
}
export function memoizeRendering<ArgsType extends any[]>(renderFunc: (...args: ArgsType) => void, unrenderFunc?: (...args: ArgsType) => void, dependencies?: MemoizedRendering<any>[]): MemoizedRendering<ArgsType>;
}
declare module '@fullcalendar/core/util/geom' {
export interface Point {
left: number;
top: number;
}
export interface Rect {
left: number;
right: number;
top: number;
bottom: number;
}
export function pointInsideRect(point: Point, rect: Rect): boolean;
export function intersectRects(rect1: Rect, rect2: Rect): Rect | false;
export function translateRect(rect: Rect, deltaX: number, deltaY: number): Rect;
export function constrainPoint(point: Point, rect: Rect): Point;
export function getRectCenter(rect: Rect): Point;
export function diffPoints(point1: Point, point2: Point): Point;
}
declare module '@fullcalendar/core/util/object' {
export function mergeProps(propObjs: any, complexProps?: any): any;
export function filterHash(hash: any, func: any): {};
export function mapHash<InputItem, OutputItem>(hash: {
[key: string]: InputItem;
}, func: (input: InputItem, key: string) => OutputItem): {
[key: string]: OutputItem;
};
export function arrayToHash(a: any): {
[key: string]: true;
};
export function hashValuesToArray(obj: any): any[];
export function isPropsEqual(obj0: any, obj1: any): boolean;
}
declare module '@fullcalendar/core/util/dom-manip' {
export function createElement(tagName: string, attrs: object | null, content?: ElementContent): HTMLElement;
export function htmlToElement(html: string): HTMLElement;
export function htmlToElements(html: string): HTMLElement[];
export type ElementContent = string | Node | Node[] | NodeList;
export function appendToElement(el: HTMLElement, content: ElementContent): void;
export function prependToElement(parent: HTMLElement, content: ElementContent): void;
export function insertAfterElement(refEl: HTMLElement, content: ElementContent): void;
export function removeElement(el: HTMLElement): void;
export function elementClosest(el: HTMLElement, selector: string): HTMLElement;
export function elementMatches(el: HTMLElement, selector: string): HTMLElement;
export function findElements(container: HTMLElement[] | HTMLElement | NodeListOf<HTMLElement>, selector: string): HTMLElement[];
export function findChildren(parent: HTMLElement[] | HTMLElement, selector?: string): HTMLElement[];
export function forceClassName(el: HTMLElement, className: string, bool: any): void;
export function applyStyle(el: HTMLElement, props: object): void;
export function applyStyleProp(el: HTMLElement, name: string, val: any): void;
}
declare module '@fullcalendar/core/structs/event-store' {
import {EventDef, EventDefHash, EventInput, EventInstanceHash, EventTuple} from '@fullcalendar/core/structs/event';
import {EventSource} from '@fullcalendar/core/structs/event-source';
import Calendar from '@fullcalendar/core/Calendar';
import {DateRange} from '@fullcalendar/core/datelib/date-range';
export interface EventStore {
defs: EventDefHash;
instances: EventInstanceHash;
}
export function parseEvents(rawEvents: EventInput[], sourceId: string, calendar: Calendar, allowOpenRange?: boolean): EventStore;
export function eventTupleToStore(tuple: EventTuple, eventStore?: EventStore): EventStore;
export function expandRecurring(eventStore: EventStore, framingRange: DateRange, calendar: Calendar): EventStore;
export function getRelevantEvents(eventStore: EventStore, instanceId: string): EventStore;
export function transformRawEvents(rawEvents: any, eventSource: EventSource, calendar: Calendar): any;
export function createEmptyEventStore(): EventStore;
export function mergeEventStores(store0: EventStore, store1: EventStore): EventStore;
export function filterEventStoreDefs(eventStore: EventStore, filterFunc: (eventDef: EventDef) => boolean): EventStore;
}
declare module '@fullcalendar/core/component/event-ui' {
import {AllowFunc, Constraint, ConstraintInput} from '@fullcalendar/core/validation';
import {parseClassName} from '@fullcalendar/core/util/html';
import Calendar from '@fullcalendar/core/Calendar';
export interface UnscopedEventUiInput {
editable?: boolean;
startEditable?: boolean;
durationEditable?: boolean;
constraint?: ConstraintInput;
overlap?: boolean;
allow?: AllowFunc;
className?: string[] | string;
classNames?: string[] | string;
backgroundColor?: string;
borderColor?: string;
textColor?: string;
color?: string;
}
export interface EventUi {
startEditable: boolean | null;
durationEditable: boolean | null;
constraints: Constraint[];
overlap: boolean | null;
allows: AllowFunc[];
backgroundColor: string;
borderColor: string;
textColor: string;
classNames: string[];
}
export type EventUiHash = {
[defId: string]: EventUi;
};
export const UNSCOPED_EVENT_UI_PROPS: {
editable: BooleanConstructor;
startEditable: BooleanConstructor;
durationEditable: BooleanConstructor;
constraint: any;
overlap: any;
allow: any;
className: typeof parseClassName;
classNames: typeof parseClassName;
color: StringConstructor;
backgroundColor: StringConstructor;
borderColor: StringConstructor;
textColor: StringConstructor;
};
export function processUnscopedUiProps(rawProps: UnscopedEventUiInput, calendar: Calendar, leftovers?: any): EventUi;
export function processScopedUiProps(prefix: string, rawScoped: any, calendar: Calendar, leftovers?: any): EventUi;
export function combineEventUis(uis: EventUi[]): EventUi;
}
declare module '@fullcalendar/core/component/event-splitting' {
import {EventStore} from '@fullcalendar/core/structs/event-store';
import {EventDef} from '@fullcalendar/core/structs/event';
import {EventInteractionState} from '@fullcalendar/core/interactions/event-interaction-state';
import {EventUi, EventUiHash} from '@fullcalendar/core/component/event-ui';
import {DateSpan} from '@fullcalendar/core/structs/date-span';
export interface SplittableProps {
businessHours: EventStore | null;
dateSelection: DateSpan | null;
eventStore: EventStore;
eventUiBases: EventUiHash;
eventSelection: string;
eventDrag: EventInteractionState | null;
eventResize: EventInteractionState | null;
}
export { Splitter as default, Splitter };
abstract class Splitter<PropsType extends SplittableProps = SplittableProps> {
abstract getKeyInfo(props: PropsType): {
[key: string]: {
ui?: EventUi;
businessHours?: EventStore;
};
};
abstract getKeysForDateSpan(dateSpan: DateSpan): string[];
abstract getKeysForEventDef(eventDef: EventDef): string[];
splitProps(props: PropsType): {
[key: string]: SplittableProps;
};
}
}
declare module '@fullcalendar/core/component/date-rendering' {
import {DateMarker} from '@fullcalendar/core/datelib/marker';
import Component, {ComponentContext} from '@fullcalendar/core/component/Component';
import {DateProfile} from '@fullcalendar/core/DateProfileGenerator';
export function buildGotoAnchorHtml(component: Component<any>, gotoOptions: any, attrs: any, innerHtml?: any): string;
export function getAllDayHtml(component: Component<any>): any;
export function getDayClasses(date: DateMarker, dateProfile: DateProfile, context: ComponentContext, noThemeHighlight?: any): any[];
}
declare module '@fullcalendar/core/util/dom-event' {
export function preventDefault(ev: any): void;
export function listenBySelector(container: HTMLElement, eventType: string, selector: string, handler: (ev: Event, matchedTarget: HTMLElement) => void): () => void;
export function listenToHoverBySelector(container: HTMLElement, selector: string, onMouseEnter: (ev: Event, matchedTarget: HTMLElement) => void, onMouseLeave: (ev: Event, matchedTarget: HTMLElement) => void): () => void;
export function whenTransitionDone(el: HTMLElement, callback: (ev: Event) => void): void;
}
declare module '@fullcalendar/core/util/dom-geom' {
import {Rect} from '@fullcalendar/core/util/geom';
export interface EdgeInfo {
borderLeft: number;
borderRight: number;
borderTop: number;
borderBottom: number;
scrollbarLeft: number;
scrollbarRight: number;
scrollbarBottom: number;
paddingLeft?: number;
paddingRight?: number;
paddingTop?: number;
paddingBottom?: number;
}
export function computeEdges(el: any, getPadding?: boolean): EdgeInfo;
export function computeInnerRect(el: any, goWithinPadding?: boolean): {
left: number;
right: number;
top: number;
bottom: number;
};
export function computeRect(el: any): Rect;
export function computeHeightAndMargins(el: HTMLElement): number;
export function computeVMargins(el: HTMLElement): number;
export function getClippingParents(el: HTMLElement): HTMLElement[];
export function computeClippingRect(el: HTMLElement): Rect;
}
declare module '@fullcalendar/core/util/promise' {
export function unpromisify(func: any, success: any, failure?: any): void;
}
declare module '@fullcalendar/core/common/EmitterMixin' {
import Mixin from '@fullcalendar/core/common/Mixin';
export interface EmitterInterface {
on(types: any, handler: any): any;
one(types: any, handler: any): any;
off(types: any, handler: any): any;
trigger(type: any, ...args: any[]): any;
triggerWith(type: any, context: any, args: any): any;
hasHandlers(type: any): any;
}
export { EmitterMixin as default, EmitterMixin };
class EmitterMixin extends Mixin implements EmitterInterface {
_handlers: any;
_oneHandlers: any;
on(type: any, handler: any): this;
one(type: any, handler: any): this;
off(type: any, handler?: any): this;
trigger(type: any, ...args: any[]): this;
triggerWith(type: any, context: any, args: any): this;
hasHandlers(type: any): any;
}
}
declare module '@fullcalendar/core/datelib/date-range' {
import {DateMarker} from '@fullcalendar/core/datelib/marker';
import {DateEnv, DateInput} from '@fullcalendar/core/datelib/env';
export interface DateRangeInput {
start?: DateInput;
end?: DateInput;
}
export interface OpenDateRange {
start: DateMarker | null;
end: DateMarker | null;
}
export interface DateRange {
start: DateMarker;
end: DateMarker;
}
export function parseRange(input: DateRangeInput, dateEnv: DateEnv): OpenDateRange;
export function invertRanges(ranges: DateRange[], constraintRange: DateRange): DateRange[];
export function intersectRanges(range0: OpenDateRange, range1: OpenDateRange): OpenDateRange;
export function rangesEqual(range0: OpenDateRange, range1: OpenDateRange): boolean;
export function rangesIntersect(range0: OpenDateRange, range1: OpenDateRange): boolean;
export function rangeContainsRange(outerRange: OpenDateRange, innerRange: OpenDateRange): boolean;
export function rangeContainsMarker(range: OpenDateRange, date: DateMarker | number): boolean;
export function constrainMarkerToRange(date: DateMarker, range: DateRange): DateMarker;
}
declare module '@fullcalendar/core/common/Mixin' {
export { Mixin as default, Mixin };
class Mixin {
static mixInto(destClass: any): void;
static mixIntoObj(destObj: any): void;
static mixOver(destClass: any): void;
}
}
declare module '@fullcalendar/core/common/PositionCache' {
export { PositionCache as default, PositionCache };
class PositionCache {
originClientRect: ClientRect;
els: HTMLElement[];
originEl: HTMLElement;
isHorizontal: boolean;
isVertical: boolean;
lefts: any;
rights: any;
tops: any;
bottoms: any;
constructor(originEl: HTMLElement, els: HTMLElement[], isHorizontal: boolean, isVertical: boolean);
build(): void;
buildElHorizontals(originClientLeft: number): void;
buildElVerticals(originClientTop: number): void;
leftToIndex(leftPosition: number): any;
topToIndex(topPosition: number): any;
getWidth(leftIndex: number): number;
getHeight(topIndex: number): number;
}
}
declare module '@fullcalendar/core/common/ScrollComponent' {
import {ElementScrollController} from '@fullcalendar/core/common/scroll-controller';
export interface ScrollbarWidths {
left: number;
right: number;
bottom: number;
}
export {ScrollComponent as default, ScrollComponent};
class ScrollComponent extends ElementScrollController {
overflowX: string;
overflowY: string;
constructor(overflowX: string, overflowY: string);
clear(): void;
destroy(): void;
applyOverflow(): void;
lockOverflow(scrollbarWidths: ScrollbarWidths): void;
setHeight(height: number | string): void;
getScrollbarWidths(): ScrollbarWidths;
}
}
declare module '@fullcalendar/core/common/scroll-controller' {
export abstract class ScrollController {
abstract getScrollTop(): number;
abstract getScrollLeft(): number;
abstract setScrollTop(top: number): void;
abstract setScrollLeft(left: number): void;
abstract getClientWidth(): number;
abstract getClientHeight(): number;
abstract getScrollWidth(): number;
abstract getScrollHeight(): number;
getMaxScrollTop(): number;
getMaxScrollLeft(): number;
canScrollVertically(): boolean;
canScrollHorizontally(): boolean;
canScrollUp(): boolean;
canScrollDown(): boolean;
canScrollLeft(): boolean;
canScrollRight(): boolean;
}
export class ElementScrollController extends ScrollController {
el: HTMLElement;
constructor(el: HTMLElement);
getScrollTop(): number;
getScrollLeft(): number;
setScrollTop(top: number): void;
setScrollLeft(left: number): void;
getScrollWidth(): number;
getScrollHeight(): number;
getClientHeight(): number;
getClientWidth(): number;
}
export class WindowScrollController extends ScrollController {
getScrollTop(): number;
getScrollLeft(): number;
setScrollTop(n: number): void;
setScrollLeft(n: number): void;
getScrollWidth(): number;
getScrollHeight(): number;
getClientHeight(): number;
getClientWidth(): number;
}
}
declare module '@fullcalendar/core/theme/Theme' {
export { Theme as default, Theme };
class Theme {
calendarOptions: any;
classes: any;
iconClasses: any;
baseIconClass: string;
iconOverrideOption: any;
iconOverrideCustomButtonOption: any;
iconOverridePrefix: string;
constructor(calendarOptions: any);
processIconOverride(): void;
setIconOverride(iconOverrideHash: any): void;
applyIconOverridePrefix(className: any): any;
getClass(key: any): any;
getIconClass(buttonName: any): string;
getCustomButtonIconClass(customButtonProps: any): string;
}
export type ThemeClass = {
new (calendarOptions: any): Theme;
};
}
declare module '@fullcalendar/core/component/Component' {
import Calendar from '@fullcalendar/core/Calendar';
import View from '@fullcalendar/core/View';
import Theme from '@fullcalendar/core/theme/Theme';
import {DateEnv} from '@fullcalendar/core/datelib/env';
export interface ComponentContext {
options: any;
dateEnv: DateEnv;
theme: Theme;
calendar: Calendar;
view: View;
}
export type EqualityFuncHash = {
[propName: string]: (obj0: any, obj1: any) => boolean;
};
export { Component as default, Component };
class Component<PropsType> {
equalityFuncs: EqualityFuncHash;
uid: string;
props: PropsType | null;
context: ComponentContext;
dateEnv: DateEnv;
theme: Theme;
view: View;
calendar: Calendar;
isRtl: boolean;
constructor(context: ComponentContext, isView?: boolean);
static addEqualityFuncs(newFuncs: EqualityFuncHash): void;
opt(name: any): any;
receiveProps(props: PropsType): void;
protected render(props: PropsType): void;
destroy(): void;
}
}
declare module '@fullcalendar/core/component/DateComponent' {
import Component, {ComponentContext} from '@fullcalendar/core/component/Component';
import {EventRenderRange} from '@fullcalendar/core/component/event-rendering';
import {DateSpan} from '@fullcalendar/core/structs/date-span';
import {EventInstanceHash} from '@fullcalendar/core/structs/event';
import {Hit} from '@fullcalendar/core/interactions/hit';
import FgEventRenderer from '@fullcalendar/core/component/renderers/FgEventRenderer';
import FillRenderer from '@fullcalendar/core/component/renderers/FillRenderer';
import {EventInteractionState} from '@fullcalendar/core/interactions/event-interaction-state';
import {EventHandlerArgs, EventHandlerName} from '@fullcalendar/core/types/input-types';
export type DateComponentHash = {
[uid: string]: DateComponent<any>;
};
export interface Seg {
component?: DateComponent<any>;
isStart: boolean;
isEnd: boolean;
eventRange?: EventRenderRange;
el?: HTMLElement;
[otherProp: string]: any;
}
export interface EventSegUiInteractionState {
affectedInstances: EventInstanceHash;
segs: Seg[];
isEvent: boolean;
sourceSeg: any;
}
export { DateComponent as default, DateComponent };
class DateComponent<PropsType> extends Component<PropsType> {
fgSegSelector: string;
bgSegSelector: string;
largeUnit: any;
eventRenderer: FgEventRenderer;
mirrorRenderer: FgEventRenderer;
fillRenderer: FillRenderer;
el: HTMLElement;
constructor(context: ComponentContext, el: HTMLElement, isView?: boolean);
destroy(): void;
buildPositionCaches(): void;
queryHit(positionLeft: number, positionTop: number, elWidth: number, elHeight: number): Hit | null;
isInteractionValid(interaction: EventInteractionState): boolean;
isDateSelectionValid(selection: DateSpan): boolean;
publiclyTrigger<T extends EventHandlerName>(name: T, args?: EventHandlerArgs<T>): any;
publiclyTriggerAfterSizing<T extends EventHandlerName>(name: T, args: EventHandlerArgs<T>): void;
hasPublicHandlers<T extends EventHandlerName>(name: T): boolean;
triggerRenderedSegs(segs: Seg[], isMirrors: boolean): void;
triggerWillRemoveSegs(segs: Seg[], isMirrors: boolean): void;
isValidSegDownEl(el: HTMLElement): boolean;
isValidDateDownEl(el: HTMLElement): boolean;
isPopover(): boolean;
isInPopover(el: HTMLElement): boolean;
}
}
declare module '@fullcalendar/core/Calendar' {
import {EmitterInterface} from '@fullcalendar/core/common/EmitterMixin';
import OptionsManager from '@fullcalendar/core/OptionsManager';
import View from '@fullcalendar/core/View';
import Theme from '@fullcalendar/core/theme/Theme';
import {EventHandlerArgs, EventHandlerName, OptionsInput} from '@fullcalendar/core/types/input-types';
import {RawLocaleMap} from '@fullcalendar/core/datelib/locale';
import {DateEnv, DateInput} from '@fullcalendar/core/datelib/env';
import {DateMarker} from '@fullcalendar/core/datelib/marker';
import {Duration, DurationInput} from '@fullcalendar/core/datelib/duration';
import {DatePointApi, DateSpan, DateSpanApi} from '@fullcalendar/core/structs/date-span';
import {DateRangeInput} from '@fullcalendar/core/datelib/date-range';
import DateProfileGenerator from '@fullcalendar/core/DateProfileGenerator';
import {EventSourceInput} from '@fullcalendar/core/structs/event-source';
import {EventInput} from '@fullcalendar/core/structs/event';
import {Action, CalendarState} from '@fullcalendar/core/reducers/types';
import EventSourceApi from '@fullcalendar/core/api/EventSourceApi';
import EventApi from '@fullcalendar/core/api/EventApi';
import {EventStore} from '@fullcalendar/core/structs/event-store';
import {EventUi, EventUiHash} from '@fullcalendar/core/component/event-ui';
import {ViewSpec, ViewSpecHash} from '@fullcalendar/core/structs/view-spec';
import {PluginSystem} from '@fullcalendar/core/plugin-system';
import CalendarComponent from '@fullcalendar/core/CalendarComponent';
import DateComponent from '@fullcalendar/core/component/DateComponent';
import {PointerDragEvent} from '@fullcalendar/core/interactions/pointer';
import {Interaction, InteractionSettingsInput} from '@fullcalendar/core/interactions/interaction';
export interface DateClickApi extends DatePointApi {
dayEl: HTMLElement;
jsEvent: UIEvent;
view: View;
}
export interface DateSelectionApi extends DateSpanApi {
jsEvent: UIEvent;
view: View;
}
export type DatePointTransform = (dateSpan: DateSpan, calendar: Calendar) => any;
export type DateSpanTransform = (dateSpan: DateSpan, calendar: Calendar) => any;
export type CalendarInteraction = {
destroy(): any;
};
export type CalendarInteractionClass = {
new (calendar: Calendar): CalendarInteraction;
};
export type OptionChangeHandler = (propValue: any, calendar: Calendar, deepEqual: any) => void;
export type OptionChangeHandlerMap = {
[propName: string]: OptionChangeHandler;
};
export { Calendar as default, Calendar };
class Calendar {
static on: EmitterInterface['on'];
static off: EmitterInterface['off'];
static trigger: EmitterInterface['trigger'];
on: EmitterInterface['on'];
one: EmitterInterface['one'];
off: EmitterInterface['off'];
trigger: EmitterInterface['trigger'];
triggerWith: EmitterInterface['triggerWith'];
hasHandlers: EmitterInterface['hasHandlers'];
eventUiBases: EventUiHash;
selectionConfig: EventUi;
optionsManager: OptionsManager;
viewSpecs: ViewSpecHash;
dateProfileGenerators: {
[viewName: string]: DateProfileGenerator;
};
theme: Theme;
dateEnv: DateEnv;
availableRawLocales: RawLocaleMap;
pluginSystem: PluginSystem;
defaultAllDayEventDuration: Duration;
defaultTimedEventDuration: Duration;
calendarInteractions: CalendarInteraction[];
interactionsStore: {
[componentUid: string]: Interaction[];
};
removeNavLinkListener: any;
windowResizeProxy: any;
isHandlingWindowResize: boolean;
state: CalendarState;
actionQueue: any[];
isReducing: boolean;
needsRerender: boolean;
needsFullRerender: boolean;
isRendering: boolean;
renderingPauseDepth: number;
renderableEventStore: EventStore;
buildDelayedRerender: typeof buildDelayedRerender;
delayedRerender: any;
afterSizingTriggers: any;
isViewUpdated: boolean;
isDatesUpdated: boolean;
isEventsUpdated: boolean;
el: HTMLElement;
component: CalendarComponent;
constructor(el: HTMLElement, overrides?: OptionsInput);
addPluginInputs(pluginInputs: any): void;
readonly view: View;
render(): void;
destroy(): void;
bindHandlers(): void;
unbindHandlers(): void;
hydrate(): void;
buildInitialState(): CalendarState;
reduce(state: CalendarState, action: Action, calendar: Calendar): CalendarState;
requestRerender(needsFull?: boolean): void;
tryRerender(): void;
batchRendering(func: any): void;
executeRender(): void;
renderComponent(needsFull: any): void;
setOption(name: string, val: any): void;
getOption(name: string): any;
opt(name: string): any;
viewOpt(name: string): any;
viewOpts(): any;
mutateOptions(updates: any, removals: string[], isDynamic?: boolean, deepEqual?: any): void;
handleOptions(options: any): void;
getAvailableLocaleCodes(): string[];
_buildSelectionConfig(rawOpts: any): EventUi;
_buildEventUiSingleBase(rawOpts: any): EventUi;
hasPublicHandlers<T extends EventHandlerName>(name: T): boolean;
publiclyTrigger<T extends EventHandlerName>(name: T, args?: EventHandlerArgs<T>): any;
publiclyTriggerAfterSizing<T extends EventHandlerName>(name: T, args: EventHandlerArgs<T>): void;
releaseAfterSizingTriggers(): void;
isValidViewType(viewType: string): boolean;
changeView(viewType: string, dateOrRange?: DateRangeInput | DateInput): void;
zoomTo(dateMarker: DateMarker, viewType?: string): void;
getUnitViewSpec(unit: string): ViewSpec | null;
getInitialDate(): Date;
prev(): void;
next(): void;
prevYear(): void;
nextYear(): void;
today(): void;
gotoDate(zonedDateInput: any): void;
incrementDate(deltaInput: any): void;
getDate(): Date;
formatDate(d: DateInput, formatter: any): string;
formatRange(d0: DateInput, d1: DateInput, settings: any): any;
formatIso(d: DateInput, omitTime?: boolean): string;
windowResize(ev: Event): void;
updateSize(): void;
registerInteractiveComponent(component: DateComponent<any>, settingsInput: InteractionSettingsInput): void;
unregisterInteractiveComponent(component: DateComponent<any>): void;
select(dateOrObj: DateInput | any, endDate?: DateInput): void;
unselect(pev?: PointerDragEvent): void;
triggerDateSelect(selection: DateSpan, pev?: PointerDragEvent): void;
triggerDateUnselect(pev?: PointerDragEvent): void;
triggerDateClick(dateSpan: DateSpan, dayEl: HTMLElement, view: View, ev: UIEvent): void;
buildDatePointApi(dateSpan: DateSpan): import("@fullcalendar/core/structs/date-span").DatePointApi;
buildDateSpanApi(dateSpan: DateSpan): import("@fullcalendar/core/structs/date-span").DateSpanApi;
getNow(): DateMarker;
getDefaultEventEnd(allDay: boolean, marker: DateMarker): DateMarker;
addEvent(eventInput: EventInput, sourceInput?: EventSourceApi | string | number): EventApi | null;
getEventById(id: string): EventApi | null;
getEvents(): EventApi[];
removeAllEvents(): void;
rerenderEvents(): void;
getEventSources(): EventSourceApi[];
getEventSourceById(id: string | number): EventSourceApi | null;
addEventSource(sourceInput: EventSourceInput): EventSourceApi;
removeAllEventSources(): void;
refetchEvents(): void;
scrollToTime(timeInput: DurationInput): void;
}
function buildDelayedRerender(this: Calendar, wait: any): any;
export {};
}
declare module '@fullcalendar/core/View' {
import DateProfileGenerator, {DateProfile} from '@fullcalendar/core/DateProfileGenerator';
import {DateMarker} from '@fullcalendar/core/datelib/marker';
import {Duration} from '@fullcalendar/core/datelib/duration';
import {EmitterInterface} from '@fullcalendar/core/common/EmitterMixin';
import {ViewSpec} from '@fullcalendar/core/structs/view-spec';
import {ComponentContext} from '@fullcalendar/core/component/Component';
import DateComponent from '@fullcalendar/core/component/DateComponent';
import {EventStore} from '@fullcalendar/core/structs/event-store';
import {EventUi, EventUiHash} from '@fullcalendar/core/component/event-ui';
import {EventRenderRange} from '@fullcalendar/core/component/event-rendering';
import {DateSpan} from '@fullcalendar/core/structs/date-span';
import {EventInteractionState} from '@fullcalendar/core/interactions/event-interaction-state';
import {EventDef} from '@fullcalendar/core/structs/event';
export interface ViewProps {
dateProfile: DateProfile;
businessHours: EventStore;
eventStore: EventStore;
eventUiBases: EventUiHash;
dateSelection: DateSpan | null;
eventSelection: string;
eventDrag: EventInteractionState | null;
eventResize: EventInteractionState | null;
}
export { View as default, View };
abstract class View extends DateComponent<ViewProps> {
usesMinMaxTime: boolean;
dateProfileGeneratorClass: any;
on: EmitterInterface['on'];
one: EmitterInterface['one'];
off: EmitterInterface['off'];
trigger: EmitterInterface['trigger'];
triggerWith: EmitterInterface['triggerWith'];
hasHandlers: EmitterInterface['hasHandlers'];
viewSpec: ViewSpec;
dateProfileGenerator: DateProfileGenerator;
type: string;
title: string;
queuedScroll: any;
eventOrderSpecs: any;
nextDayThreshold: Duration;
isNowIndicatorRendered: boolean;
initialNowDate: DateMarker;
initialNowQueriedMs: number;
nowIndicatorTimeoutID: any;
nowIndicatorIntervalID: any;
constructor(context: ComponentContext, viewSpec: ViewSpec, dateProfileGenerator: DateProfileGenerator, parentEl: HTMLElement);
initialize(): void;
readonly activeStart: Date;
readonly activeEnd: Date;
readonly currentStart: Date;
readonly currentEnd: Date;
render(props: ViewProps): void;
destroy(): void;
updateSize(isResize: boolean, viewHeight: number, isAuto: boolean): void;
updateBaseSize(isResize: boolean, viewHeight: number, isAuto: boolean): void;
renderDatesWrap(dateProfile: DateProfile): void;
unrenderDatesWrap(): void;
renderDates(dateProfile: DateProfile): void;
unrenderDates(): void;
renderBusinessHours(businessHours: EventStore): void;
unrenderBusinessHours(): void;
renderDateSelectionWrap(selection: DateSpan): void;
unrenderDateSelectionWrap(selection: DateSpan): void;
renderDateSelection(selection: DateSpan): void;
unrenderDateSelection(selection: DateSpan): void;
renderEvents(eventStore: EventStore): void;
unrenderEvents(): void;
sliceEvents(eventStore: EventStore, allDay: boolean): EventRenderRange[];
computeEventDraggable(eventDef: EventDef, eventUi: EventUi): boolean;
computeEventStartResizable(eventDef: EventDef, eventUi: EventUi): any;
computeEventEndResizable(eventDef: EventDef, eventUi: EventUi): boolean;
renderEventSelectionWrap(instanceId: string): void;
unrenderEventSelectionWrap(instanceId: string): void;
renderEventSelection(instanceId: string): void;
unrenderEventSelection(instanceId: string): void;
renderEventDragWrap(state: EventInteractionState): void;
unrenderEventDragWrap(state: EventInteractionState): void;
renderEventDrag(state: EventInteractionState): void;
unrenderEventDrag(state: EventInteractionState): void;
renderEventResizeWrap(state: EventInteractionState): void;
unrenderEventResizeWrap(state: EventInteractionState): void;
renderEventResize(state: EventInteractionState): void;
unrenderEventResize(state: EventInteractionState): void;
startNowIndicator(dateProfile: DateProfile): void;
updateNowIndicator(): void;
stopNowIndicator(): void;
getNowIndicatorUnit(dateProfile: DateProfile): void;
renderNowIndicator(date: any): void;
unrenderNowIndicator(): void;
addScroll(scroll: any): void;
popScroll(isResize: boolean): void;
applyQueuedScroll(isResize: boolean): void;
queryScroll(): any;
applyScroll(scroll: any, isResize: boolean): void;
computeDateScroll(duration: Duration): {};
queryDateScroll(): {};
applyDateScroll(scroll: any): void;
scrollToDuration(duration: Duration): void;
}
}
declare module '@fullcalendar/core/component/renderers/FgEventRenderer' {
import {DateMarker} from '@fullcalendar/core/datelib/marker';
import {DateFormatter} from '@fullcalendar/core/datelib/formatting';
import {EventUi} from '@fullcalendar/core/component/event-ui';
import {EventRenderRange} from '@fullcalendar/core/component/event-rendering';
import {Seg} from '@fullcalendar/core/component/DateComponent';
import {ComponentContext} from '@fullcalendar/core/component/Component';
export {FgEventRenderer as default, FgEventRenderer};
abstract class FgEventRenderer {
context: ComponentContext;
eventTimeFormat: DateFormatter;
displayEventTime: boolean;
displayEventEnd: boolean;
segs: Seg[];
isSizeDirty: boolean;
constructor(context: ComponentContext);
renderSegs(segs: Seg[], mirrorInfo?: any): void;
unrender(_segs: Seg[], mirrorInfo?: any): void;
abstract renderSegHtml(seg: Seg, mirrorInfo: any): string;
abstract attachSegs(segs: Seg[], mirrorInfo: any): any;
abstract detachSegs(segs: Seg[]): any;
rangeUpdated(): void;
renderSegEls(segs: Seg[], mirrorInfo: any): Seg[];
getSegClasses(seg: Seg, isDraggable: any, isResizable: any, mirrorInfo: any): string[];
getTimeText(eventRange: EventRenderRange, formatter?: any, displayEnd?: any): any;
_getTimeText(start: DateMarker, end: DateMarker, allDay: any, formatter?: any, displayEnd?: any, forcedStartTzo?: number, forcedEndTzo?: number): any;
computeEventTimeFormat(): any;
computeDisplayEventTime(): boolean;
computeDisplayEventEnd(): boolean;
getSkinCss(ui: EventUi): {
'background-color': string;
'border-color': string;
color: string;
};
sortEventSegs(segs: any): Seg[];
computeSizes(force: boolean): void;
assignSizes(force: boolean): void;
computeSegSizes(segs: Seg[]): void;
assignSegSizes(segs: Seg[]): void;
hideByHash(hash: any): void;
showByHash(hash: any): void;
selectByInstanceId(instanceId: string): void;
unselectByInstanceId(instanceId: string): void;
}
export function buildSegCompareObj(seg: Seg): any;
}
declare module '@fullcalendar/core/component/renderers/FillRenderer' {
import {Seg} from '@fullcalendar/core/component/DateComponent';
import {ComponentContext} from '@fullcalendar/core/component/Component';
export {FillRenderer as default, FillRenderer};
abstract class FillRenderer {
context: ComponentContext;
fillSegTag: string;
containerElsByType: any;
segsByType: any;
dirtySizeFlags: any;
constructor(context: ComponentContext);
getSegsByType(type: string): any;
renderSegs(type: any, segs: Seg[]): void;
unrender(type: any): void;
renderSegEls(type: any, segs: Seg[]): Seg[];
renderSegHtml(type: any, seg: Seg): string;
abstract attachSegs(type: any, segs: Seg[]): HTMLElement[] | void;
detachSegs(type: any, segs: Seg[]): void;
computeSizes(force: boolean): void;
assignSizes(force: boolean): void;
computeSegSizes(segs: Seg[]): void;
assignSegSizes(segs: Seg[]): void;
}
}
declare module '@fullcalendar/core/DateProfileGenerator' {
import {DateMarker} from '@fullcalendar/core/datelib/marker';
import {Duration} from '@fullcalendar/core/datelib/duration';
import {DateRange, OpenDateRange} from '@fullcalendar/core/datelib/date-range';
import {ViewSpec} from '@fullcalendar/core/structs/view-spec';
import {DateEnv} from '@fullcalendar/core/datelib/env';
import Calendar from '@fullcalendar/core/Calendar';
export interface DateProfile {
currentRange: DateRange;
currentRangeUnit: string;
isRangeAllDay: boolean;
validRange: OpenDateRange;
activeRange: DateRange;
renderRange: DateRange;
minTime: Duration;
maxTime: Duration;
isValid: boolean;
dateIncrement: Duration;
}
export { DateProfileGenerator as default, DateProfileGenerator };
class DateProfileGenerator {
viewSpec: ViewSpec;
options: any;
dateEnv: DateEnv;
calendar: Calendar;
isHiddenDayHash: boolean[];
constructor(viewSpec: ViewSpec, calendar: Calendar);
buildPrev(currentDateProfile: DateProfile, currentDate: DateMarker): DateProfile;
buildNext(currentDateProfile: DateProfile, currentDate: DateMarker): DateProfile;
build(currentDate: DateMarker, direction?: any, forceToValid?: boolean): DateProfile;
buildValidRange(): OpenDateRange;
buildCurrentRangeInfo(date: DateMarker, direction: any): {
duration: any;
unit: any;
range: any;
};
getFallbackDuration(): Duration;
adjustActiveRange(range: DateRange, minTime: Duration, maxTime: Duration): {
start: Date;
end: Date;
};
buildRangeFromDuration(date: DateMarker, direction: any, duration: Duration, unit: any): any;
buildRangeFromDayCount(date: DateMarker, direction: any, dayCount: any): {
start: Date;
end: Date;
};
buildCustomVisibleRange(date: DateMarker): OpenDateRange;
buildRenderRange(currentRange: DateRange, currentRangeUnit: any, isRangeAllDay: any): DateRange;
buildDateIncrement(fallback: any): Duration;
getRangeOption(name: any, ...otherArgs: any[]): OpenDateRange;
initHiddenDays(): void;
trimHiddenDays(range: DateRange): DateRange | null;
isHiddenDay(day: any): boolean;
skipHiddenDays(date: DateMarker, inc?: number, isExclusive?: boolean): Date;
}
export function isDateProfilesEqual(p0: DateProfile, p1: DateProfile): boolean;
}
declare module '@fullcalendar/core/structs/view-def' {
import {ViewClass, ViewConfigHash} from '@fullcalendar/core/structs/view-config';
export interface ViewDef {
type: string;
class: ViewClass;
overrides: any;
defaults: any;
}
export type ViewDefHash = {
[viewType: string]: ViewDef;
};
export function compileViewDefs(defaultConfigs: ViewConfigHash, overrideConfigs: ViewConfigHash): ViewDefHash;
}
declare module '@fullcalendar/core/structs/view-spec' {
import {Duration} from '@fullcalendar/core/datelib/duration';
import OptionsManager from '@fullcalendar/core/OptionsManager';
import {ViewClass, ViewConfigInputHash} from '@fullcalendar/core/structs/view-config';
export interface ViewSpec {
type: string;
class: ViewClass;
duration: Duration;
durationUnit: string;
singleUnit: string;
options: any;
buttonTextOverride: string;
buttonTextDefault: string;
}
export type ViewSpecHash = {
[viewType: string]: ViewSpec;
};
export function buildViewSpecs(defaultInputs: ViewConfigInputHash, optionsManager: OptionsManager): ViewSpecHash;
}
declare module '@fullcalendar/core/structs/date-span' {
import {DateRange, OpenDateRange} from '@fullcalendar/core/datelib/date-range';
import {DateEnv, DateInput} from '@fullcalendar/core/datelib/env';
import {Duration} from '@fullcalendar/core/datelib/duration';
import {EventRenderRange} from '@fullcalendar/core/component/event-rendering';
import {EventUiHash} from '@fullcalendar/core/component/event-ui';
import Calendar from '@fullcalendar/core/Calendar';
export interface OpenDateSpanInput {
start?: DateInput;
end?: DateInput;
allDay?: boolean;
[otherProp: string]: any;
}
export interface DateSpanInput extends OpenDateSpanInput {
start: DateInput;
end: DateInput;
}
export interface OpenDateSpan {
range: OpenDateRange;
allDay: boolean;
[otherProp: string]: any;
}
export interface DateSpan extends OpenDateSpan {
range: DateRange;
}
export interface DateSpanApi {
start: Date;
end: Date;
startStr: string;
endStr: string;
allDay: boolean;
}
export interface DatePointApi {
date: Date;
dateStr: string;
allDay: boolean;
}
export function parseDateSpan(raw: DateSpanInput, dateEnv: DateEnv, defaultDuration?: Duration): DateSpan | null;
export function parseOpenDateSpan(raw: OpenDateSpanInput, dateEnv: DateEnv): OpenDateSpan | null;
export function isDateSpansEqual(span0: DateSpan, span1: DateSpan): boolean;
export function buildDateSpanApi(span: DateSpan, dateEnv: DateEnv): DateSpanApi;
export function buildDatePointApi(span: DateSpan, dateEnv: DateEnv): DatePointApi;
export function fabricateEventRange(dateSpan: DateSpan, eventUiBases: EventUiHash, calendar: Calendar): EventRenderRange;
}
declare module '@fullcalendar/core/datelib/marker' {
import {Duration} from '@fullcalendar/core/datelib/duration';
export type DateMarker = Date;
export const DAY_IDS: string[];
export function addWeeks(m: DateMarker, n: number): Date;
export function addDays(m: DateMarker, n: number): Date;
export function addMs(m: DateMarker, n: number): Date;
export function diffWeeks(m0: any, m1: any): number;
export function diffDays(m0: any, m1: any): number;
export function diffHours(m0: any, m1: any): number;
export function diffMinutes(m0: any, m1: any): number;
export function diffSeconds(m0: any, m1: any): number;
export function diffDayAndTime(m0: DateMarker, m1: DateMarker): Duration;
export function diffWholeWeeks(m0: DateMarker, m1: DateMarker): number;
export function diffWholeDays(m0: DateMarker, m1: DateMarker): number;
export function startOfDay(m: DateMarker): DateMarker;
export function startOfHour(m: DateMarker): Date;
export function startOfMinute(m: DateMarker): Date;
export function startOfSecond(m: DateMarker): Date;
export function weekOfYear(marker: any, dow: any, doy: any): number;
export function dateToLocalArray(date: any): any[];
export function arrayToLocalDate(a: any): Date;
export function dateToUtcArray(date: any): any[];
export function arrayToUtcDate(a: any): Date;
export function isValidDate(m: DateMarker): boolean;
export function timeAsMs(m: DateMarker): number;
}
declare module '@fullcalendar/core/datelib/duration' {
export type DurationInput = DurationObjectInput | string | number;
export interface DurationObjectInput {
years?: number;
year?: number;
months?: number;
month?: number;
weeks?: number;
week?: number;
days?: number;
day?: number;
hours?: number;
hour?: number;
minutes?: number;
minute?: number;
seconds?: number;
second?: number;
milliseconds?: number;
millisecond?: number;
ms?: number;
}
export interface Duration {
years: number;
months: number;
days: number;
milliseconds: number;
}
export function createDuration(input: DurationInput, unit?: string): Duration | null;
export function getWeeksFromInput(obj: DurationObjectInput): number;
export function durationsEqual(d0: Duration, d1: Duration): boolean;
export function isSingleDay(dur: Duration): boolean;
export function addDurations(d0: Duration, d1: Duration): {
years: number;
months: number;
days: number;
milliseconds: number;
};
export function subtractDurations(d1: Duration, d0: Duration): Duration;
export function multiplyDuration(d: Duration, n: number): {
years: number;
months: number;
days: number;
milliseconds: number;
};
export function asRoughYears(dur: Duration): number;
export function asRoughMonths(dur: Duration): number;
export function asRoughDays(dur: Duration): number;
export function asRoughHours(dur: Duration): number;
export function asRoughMinutes(dur: Duration): number;
export function asRoughSeconds(dur: Duration): number;
export function asRoughMs(dur: Duration): number;
export function wholeDivideDurations(numerator: Duration, denominator: Duration): number;
export function greatestDurationDenominator(dur: Duration, dontReturnWeeks?: boolean): {
unit: string;
value: number;
};
}
declare module '@fullcalendar/core/datelib/env' {
import {DateMarker} from '@fullcalendar/core/datelib/marker';
import {CalendarSystem} from '@fullcalendar/core/datelib/calendar-system';
import {Locale} from '@fullcalendar/core/datelib/locale';
import {NamedTimeZoneImpl, NamedTimeZoneImplClass} from '@fullcalendar/core/datelib/timezone';
import {Duration} from '@fullcalendar/core/datelib/duration';
import {DateFormatter} from '@fullcalendar/core/datelib/formatting';
import {CmdFormatterFunc} from '@fullcalendar/core/datelib/formatting-cmd';
export interface DateEnvSettings {
timeZone: string;
namedTimeZoneImpl?: NamedTimeZoneImplClass;
calendarSystem: string;
locale: Locale;
weekNumberCalculation?: any;
firstDay?: any;
weekLabel?: string;
cmdFormatter?: CmdFormatterFunc;
}
export type DateInput = Date | string | number | number[];
export interface DateMarkerMeta {
marker: DateMarker;
isTimeUnspecified: boolean;
forcedTzo: number | null;
}
export class DateEnv {
timeZone: string;
namedTimeZoneImpl: NamedTimeZoneImpl;
canComputeOffset: boolean;
calendarSystem: CalendarSystem;
locale: Locale;
weekDow: number;
weekDoy: number;
weekNumberFunc: any;
weekLabel: string;
cmdFormatter?: CmdFormatterFunc;
constructor(settings: DateEnvSettings);
createMarker(input: DateInput): DateMarker;
createNowMarker(): DateMarker;
createMarkerMeta(input: DateInput): DateMarkerMeta;
parse(s: string): {
marker: Date;
isTimeUnspecified: boolean;
forcedTzo: any;
};
getYear(marker: DateMarker): number;
getMonth(marker: DateMarker): number;
add(marker: DateMarker, dur: Duration): DateMarker;
subtract(marker: DateMarker, dur: Duration): DateMarker;
addYears(marker: DateMarker, n: number): Date;
addMonths(marker: DateMarker, n: number): Date;
diffWholeYears(m0: DateMarker, m1: DateMarker): number;
diffWholeMonths(m0: DateMarker, m1: DateMarker): number;
greatestWholeUnit(m0: DateMarker, m1: DateMarker): {
unit: string;
value: number;
};
countDurationsBetween(m0: DateMarker, m1: DateMarker, d: Duration): number;
startOf(m: DateMarker, unit: string): Date;
startOfYear(m: DateMarker): DateMarker;
startOfMonth(m: DateMarker): DateMarker;
startOfWeek(m: DateMarker): DateMarker;
computeWeekNumber(marker: DateMarker): number;
format(marker: DateMarker, formatter: DateFormatter, dateOptions?: {
forcedTzo?: number;
}): any;
formatRange(start: DateMarker, end: DateMarker, formatter: DateFormatter, dateOptions?: {
forcedStartTzo?: number;
forcedEndTzo?: number;
isEndExclusive?: boolean;
}): any;
formatIso(marker: DateMarker, extraOptions?: any): string;
timestampToMarker(ms: number): Date;
offsetForMarker(m: DateMarker): number;
toDate(m: DateMarker, forcedTzo?: number): Date;
}
}
declare module '@fullcalendar/core/datelib/formatting' {
import {DateMarker} from '@fullcalendar/core/datelib/marker';
import {CalendarSystem} from '@fullcalendar/core/datelib/calendar-system';
import {Locale} from '@fullcalendar/core/datelib/locale';
import {CmdFormatterFunc} from '@fullcalendar/core/datelib/formatting-cmd';
import {FuncFormatterFunc} from '@fullcalendar/core/datelib/formatting-func';
export interface ZonedMarker {
marker: DateMarker;
timeZoneOffset: number;
}
export interface ExpandedZonedMarker extends ZonedMarker {
array: number[];
year: number;
month: number;
day: number;
hour: number;
minute: number;
second: number;
millisecond: number;
}
export interface VerboseFormattingArg {
date: ExpandedZonedMarker;
start: ExpandedZonedMarker;
end?: ExpandedZonedMarker;
timeZone: string;
localeCodes: string[];
separator: string;
}
export interface DateFormattingContext {
timeZone: string;
locale: Locale;
calendarSystem: CalendarSystem;
computeWeekNumber: (d: DateMarker) => number;
weekLabel: string;
cmdFormatter?: CmdFormatterFunc;
}
export interface DateFormatter {
format(date: ZonedMarker, context: DateFormattingContext): any;
formatRange(start: ZonedMarker, end: ZonedMarker, context: DateFormattingContext): any;
}
export type FormatterInput = object | string | FuncFormatterFunc;
export function createFormatter(input: FormatterInput, defaultSeparator?: string): DateFormatter;
export function buildIsoString(marker: DateMarker, timeZoneOffset?: number, stripZeroTime?: boolean): string;
export function formatIsoTimeString(marker: DateMarker): string;
export function formatTimeZoneOffset(minutes: number, doIso?: boolean): string;
export function createVerboseFormattingArg(start: ZonedMarker, end: ZonedMarker, context: DateFormattingContext, separator?: string): VerboseFormattingArg;
}
declare module '@fullcalendar/core/datelib/timezone' {
export abstract class NamedTimeZoneImpl {
timeZoneName: string;
constructor(timeZoneName: string);
abstract offsetForArray(a: number[]): number;
abstract timestampToArray(ms: number): number[];
}
export type NamedTimeZoneImplClass = {
new (timeZoneName: string): NamedTimeZoneImpl;
};
}
declare module '@fullcalendar/core/datelib/parsing' {
export function parse(str: any): {
marker: Date;
isTimeUnspecified: boolean;
timeZoneOffset: any;
};
}
declare module '@fullcalendar/core/structs/event-source' {
import {EventInput} from '@fullcalendar/core/structs/event';
import Calendar from '@fullcalendar/core/Calendar';
import {DateRange} from '@fullcalendar/core/datelib/date-range';
import {EventSourceFunc} from '@fullcalendar/core/event-sources/func-event-source';
import {EventUi} from '@fullcalendar/core/component/event-ui';
import {AllowFunc, ConstraintInput} from '@fullcalendar/core/validation';
export type EventSourceError = {
message: string;
response?: any;
[otherProp: string]: any;
};
export type EventInputTransformer = (eventInput: EventInput) => EventInput | null;
export type EventSourceSuccessResponseHandler = (rawData: any, response: any) => EventInput[] | void;
export type EventSourceErrorResponseHandler = (error: EventSourceError) => void;
export interface ExtendedEventSourceInput {
id?: string | number;
allDayDefault?: boolean;
eventDataTransform?: EventInputTransformer;
events?: EventInput[] | EventSourceFunc;
url?: string;
method?: string;
extraParams?: object | (() => object);
startParam?: string;
endParam?: string;
timeZoneParam?: string;
success?: EventSourceSuccessResponseHandler;
failure?: EventSourceErrorResponseHandler;
editable?: boolean;
startEditable?: boolean;
durationEditable?: boolean;
constraint?: ConstraintInput;
overlap?: boolean;
allow?: AllowFunc;
className?: string[] | string;
classNames?: string[] | string;
backgroundColor?: string;
borderColor?: string;
textColor?: string;
color?: string;
[otherProp: string]: any;
}
export type EventSourceInput = ExtendedEventSourceInput | // object in extended form
EventSourceFunc | // just a function
string;
export interface EventSource {
_raw: any;
sourceId: string;
sourceDefId: number;
meta: any;
publicId: string;
isFetching: boolean;
latestFetchId: string;
fetchRange: DateRange | null;
allDayDefault: boolean | null;
eventDataTransform: EventInputTransformer;
ui: EventUi;
success: EventSourceSuccessResponseHandler | null;
failure: EventSourceErrorResponseHandler | null;
extendedProps: any;
}
export type EventSourceHash = {
[sourceId: string]: EventSource;
};
export type EventSourceFetcher = (arg: {
eventSource: EventSource;
calendar: Calendar;
range: DateRange;
}, success: (res: {
rawEvents: EventInput[];
xhr?: XMLHttpRequest;
}) => void, failure: (error: EventSourceError) => void) => (void | PromiseLike<EventInput[]>);
export interface EventSourceDef {
ignoreRange?: boolean;
parseMeta: (raw: EventSourceInput) => object | null;
fetch: EventSourceFetcher;
}
export function doesSourceNeedRange(eventSource: EventSource, calendar: Calendar): boolean;
export function parseEventSource(raw: EventSourceInput, calendar: Calendar): EventSource | null;
}
declare module '@fullcalendar/core/interactions/interaction' {
import DateComponent from '@fullcalendar/core/component/DateComponent';
export abstract class Interaction {
component: DateComponent<any>;
constructor(settings: InteractionSettings);
destroy(): void;
}
export type InteractionClass = {
new (settings: InteractionSettings): Interaction;
};
export interface InteractionSettingsInput {
el: HTMLElement;
useEventCenter?: boolean;
}
export interface InteractionSettings {
component: DateComponent<any>;
el: HTMLElement;
useEventCenter: boolean;
}
export type InteractionSettingsStore = {
[componenUid: string]: InteractionSettings;
};
export function parseInteractionSettings(component: DateComponent<any>, input: InteractionSettingsInput): InteractionSettings;
export function interactionSettingsToStore(settings: InteractionSettings): {
[x: string]: InteractionSettings;
};
export let interactionSettingsStore: InteractionSettingsStore;
}
declare module '@fullcalendar/core/interactions/pointer' {
export interface PointerDragEvent {
origEvent: UIEvent;
isTouch: boolean;
subjectEl: EventTarget;
pageX: number;
pageY: number;
deltaX: number;
deltaY: number;
}
}
declare module '@fullcalendar/core/interactions/hit' {
import DateComponent from '@fullcalendar/core/component/DateComponent';
import {DateSpan} from '@fullcalendar/core/structs/date-span';
import {Rect} from '@fullcalendar/core/util/geom';
export interface Hit {
component: DateComponent<any>;
dateSpan: DateSpan;
dayEl: HTMLElement;
rect: Rect;
layer: number;
}
}
declare module '@fullcalendar/core/interactions/date-selecting' {
import {Hit} from '@fullcalendar/core/interactions/hit';
export type dateSelectionJoinTransformer = (hit0: Hit, hit1: Hit) => any;
}
declare module '@fullcalendar/core/interactions/event-dragging' {
import Calendar from '@fullcalendar/core/Calendar';
import {EventMutation} from '@fullcalendar/core/structs/event-mutation';
import {Hit} from '@fullcalendar/core/interactions/hit';
import {EventDef} from '@fullcalendar/core/structs/event';
import {EventUi} from '@fullcalendar/core/component/event-ui';
import {View} from '@fullcalendar/core';
export type eventDragMutationMassager = (mutation: EventMutation, hit0: Hit, hit1: Hit) => void;
export type EventDropTransformers = (mutation: EventMutation, calendar: Calendar) => any;
export type eventIsDraggableTransformer = (val: boolean, eventDef: EventDef, eventUi: EventUi, view: View) => boolean;
}
declare module '@fullcalendar/core/interactions/event-resizing' {
import {Hit} from '@fullcalendar/core/interactions/hit';
export type EventResizeJoinTransforms = (hit0: Hit, hit1: Hit) => false | object;
}
declare module '@fullcalendar/core/interactions/ElementDragging' {
import EmitterMixin from '@fullcalendar/core/common/EmitterMixin';
export { ElementDragging as default, ElementDragging };
abstract class ElementDragging {
emitter: EmitterMixin;
constructor(el: HTMLElement);
destroy(): void;
abstract setIgnoreMove(bool: boolean): void;
setMirrorIsVisible(bool: boolean): void;
setMirrorNeedsRevert(bool: boolean): void;
setAutoScrollEnabled(bool: boolean): void;
}
export type ElementDraggingClass = {
new (el: HTMLElement): ElementDragging;
};
}
declare module '@fullcalendar/core/formatting-api' {
import {DateInput} from '@fullcalendar/core/datelib/env';
export function formatDate(dateInput: DateInput, settings?: {}): any;
export function formatRange(startInput: DateInput, endInput: DateInput, settings: any): any;
}
declare module '@fullcalendar/core/options' {
import {PluginDef} from '@fullcalendar/core/plugin-system';
export const config: any;
export const globalDefaults: {
defaultRangeSeparator: string;
titleRangeSeparator: string;
defaultTimedEventDuration: string;
defaultAllDayEventDuration: {
day: number;
};
forceEventDuration: boolean;
nextDayThreshold: string;
columnHeader: boolean;
defaultView: string;
aspectRatio: number;
header: {
left: string;
center: string;
right: string;
};
weekends: boolean;
weekNumbers: boolean;
weekNumberCalculation: string;
editable: boolean;
scrollTime: string;
minTime: string;
maxTime: string;
showNonCurrentDates: boolean;
lazyFetching: boolean;
startParam: string;
endParam: string;
timeZoneParam: string;
timeZone: string;
locales: any[];
locale: string;
timeGridEventMinHeight: number;
themeSystem: string;
dragRevertDuration: number;
dragScroll: boolean;
allDayMaintainDuration: boolean;
unselectAuto: boolean;
dropAccept: string;
eventOrder: string;
eventLimit: boolean;
eventLimitClick: string;
dayPopoverFormat: {
month: string;
day: string;
year: string;
};
handleWindowResize: boolean;
windowResizeDelay: number;
longPressDelay: number;
eventDragMinDistance: number;
};
export const rtlDefaults: {
header: {
left: string;
center: string;
right: string;
};
buttonIcons: {
prev: string;
next: string;
prevYear: string;
nextYear: string;
};
};
export function mergeOptions(optionObjs: any): any;
export function refinePluginDefs(pluginInputs: any[]): PluginDef[];
}
declare module '@fullcalendar/core/structs/recurring-event' {
import {EventDef, EventInput} from '@fullcalendar/core/structs/event';
import {DateRange} from '@fullcalendar/core/datelib/date-range';
import {DateEnv} from '@fullcalendar/core/datelib/env';
import {Duration} from '@fullcalendar/core/datelib/duration';
import {DateMarker} from '@fullcalendar/core/datelib/marker';
export interface ParsedRecurring {
typeData: any;
allDayGuess: boolean | null;
duration: Duration | null;
}
export interface RecurringType {
parse: (rawEvent: EventInput, leftoverProps: any, dateEnv: DateEnv) => ParsedRecurring | null;
expand: (typeData: any, framingRange: DateRange, dateEnv: DateEnv) => DateMarker[];
}
export function parseRecurring(eventInput: EventInput, allDayDefault: boolean | null, dateEnv: DateEnv, recurringTypes: RecurringType[], leftovers: any): {
allDay: any;
duration: Duration;
typeData: any;
typeId: number;
};
export function expandRecurringRanges(eventDef: EventDef, duration: Duration, framingRange: DateRange, dateEnv: DateEnv, recurringTypes: RecurringType[]): DateMarker[];
}
declare module '@fullcalendar/core/structs/drag-meta' {
import {Duration, DurationInput} from '@fullcalendar/core/datelib/duration';
import {EventNonDateInput} from '@fullcalendar/core/structs/event';
export interface DragMetaInput extends EventNonDateInput {
startTime?: DurationInput;
duration?: DurationInput;
create?: boolean;
sourceId?: string;
}
export interface DragMeta {
startTime: Duration | null;
duration: Duration | null;
create: boolean;
sourceId: string;
leftoverProps: object;
}
export function parseDragMeta(raw: DragMetaInput): DragMeta;
}
declare module '@fullcalendar/core/plugin-system' {
import {reducerFunc} from '@fullcalendar/core/reducers/types';
import {eventDefParserFunc} from '@fullcalendar/core/structs/event';
import {eventDefMutationApplier} from '@fullcalendar/core/structs/event-mutation';
import Calendar, {
CalendarInteractionClass,
DatePointTransform,
DateSpanTransform,
OptionChangeHandlerMap
} from '@fullcalendar/core/Calendar';
import {ViewConfigInputHash} from '@fullcalendar/core/structs/view-config';
import {ViewSpec} from '@fullcalendar/core/structs/view-spec';
import View, {ViewProps} from '@fullcalendar/core/View';
import {CalendarComponentProps} from '@fullcalendar/core/CalendarComponent';
import {isPropsValidTester} from '@fullcalendar/core/validation';
import {
eventDragMutationMassager,
EventDropTransformers,
eventIsDraggableTransformer
} from '@fullcalendar/core/interactions/event-dragging';
import {dateSelectionJoinTransformer} from '@fullcalendar/core/interactions/date-selecting';
import {EventResizeJoinTransforms} from '@fullcalendar/core/interactions/event-resizing';
import {ExternalDefTransform} from '@fullcalendar/core/interactions/external-element-dragging';
import {InteractionClass} from '@fullcalendar/core/interactions/interaction';
import {ThemeClass} from '@fullcalendar/core/theme/Theme';
import {EventSourceDef} from '@fullcalendar/core/structs/event-source';
import {CmdFormatterFunc} from '@fullcalendar/core/datelib/formatting-cmd';
import {RecurringType} from '@fullcalendar/core/structs/recurring-event';
import {NamedTimeZoneImplClass} from '@fullcalendar/core/datelib/timezone';
import {ElementDraggingClass} from '@fullcalendar/core/interactions/ElementDragging';
export interface PluginDefInput {
deps?: PluginDef[];
reducers?: reducerFunc[];
eventDefParsers?: eventDefParserFunc[];
isDraggableTransformers?: eventIsDraggableTransformer[];
eventDragMutationMassagers?: eventDragMutationMassager[];
eventDefMutationAppliers?: eventDefMutationApplier[];
dateSelectionTransformers?: dateSelectionJoinTransformer[];
datePointTransforms?: DatePointTransform[];
dateSpanTransforms?: DateSpanTransform[];
views?: ViewConfigInputHash;
viewPropsTransformers?: ViewPropsTransformerClass[];
isPropsValid?: isPropsValidTester;
externalDefTransforms?: ExternalDefTransform[];
eventResizeJoinTransforms?: EventResizeJoinTransforms[];
viewContainerModifiers?: ViewContainerModifier[];
eventDropTransformers?: EventDropTransformers[];
componentInteractions?: InteractionClass[];
calendarInteractions?: CalendarInteractionClass[];
themeClasses?: {
[themeSystemName: string]: ThemeClass;
};
eventSourceDefs?: EventSourceDef[];
cmdFormatter?: CmdFormatterFunc;
recurringTypes?: RecurringType[];
namedTimeZonedImpl?: NamedTimeZoneImplClass;
defaultView?: string;
elementDraggingImpl?: ElementDraggingClass;
optionChangeHandlers?: OptionChangeHandlerMap;
}
export interface PluginHooks {
reducers: reducerFunc[];
eventDefParsers: eventDefParserFunc[];
isDraggableTransformers: eventIsDraggableTransformer[];
eventDragMutationMassagers: eventDragMutationMassager[];
eventDefMutationAppliers: eventDefMutationApplier[];
dateSelectionTransformers: dateSelectionJoinTransformer[];
datePointTransforms: DatePointTransform[];
dateSpanTransforms: DateSpanTransform[];
views: ViewConfigInputHash;
viewPropsTransformers: ViewPropsTransformerClass[];
isPropsValid: isPropsValidTester | null;
externalDefTransforms: ExternalDefTransform[];
eventResizeJoinTransforms: EventResizeJoinTransforms[];
viewContainerModifiers: ViewContainerModifier[];
eventDropTransformers: EventDropTransformers[];
componentInteractions: InteractionClass[];
calendarInteractions: CalendarInteractionClass[];
themeClasses: {
[themeSystemName: string]: ThemeClass;
};
eventSourceDefs: EventSourceDef[];
cmdFormatter?: CmdFormatterFunc;
recurringTypes: RecurringType[];
namedTimeZonedImpl?: NamedTimeZoneImplClass;
defaultView: string;
elementDraggingImpl?: ElementDraggingClass;
optionChangeHandlers: OptionChangeHandlerMap;
}
export interface PluginDef extends PluginHooks {
id: string;
deps: PluginDef[];
}
export type ViewPropsTransformerClass = new () => ViewPropsTransformer;
export interface ViewPropsTransformer {
transform(viewProps: ViewProps, viewSpec: ViewSpec, calendarProps: CalendarComponentProps, view: View): any;
}
export type ViewContainerModifier = (contentEl: HTMLElement, calendar: Calendar) => void;
export function createPlugin(input: PluginDefInput): PluginDef;
export class PluginSystem {
hooks: PluginHooks;
addedHash: {
[pluginId: string]: true;
};
constructor();
add(plugin: PluginDef): void;
}
}
declare module '@fullcalendar/core/reducers/types' {
import {EventInput, EventInstanceHash} from '@fullcalendar/core/structs/event';
import {DateRange} from '@fullcalendar/core/datelib/date-range';
import {EventStore} from '@fullcalendar/core/structs/event-store';
import {EventMutation} from '@fullcalendar/core/structs/event-mutation';
import {EventSource, EventSourceError, EventSourceHash} from '@fullcalendar/core/structs/event-source';
import {DateProfile} from '@fullcalendar/core/DateProfileGenerator';
import {EventInteractionState} from '@fullcalendar/core/interactions/event-interaction-state';
import {DateSpan} from '@fullcalendar/core/structs/date-span';
import {DateEnv} from '@fullcalendar/core/datelib/env';
import Calendar from '@fullcalendar/core/Calendar';
import {DateMarker} from '@fullcalendar/core/datelib/marker';
export interface CalendarState {
eventSources: EventSourceHash;
eventSourceLoadingLevel: number;
loadingLevel: number;
viewType: string;
currentDate: DateMarker;
dateProfile: DateProfile | null;
eventStore: EventStore;
dateSelection: DateSpan | null;
eventSelection: string;
eventDrag: EventInteractionState | null;
eventResize: EventInteractionState | null;
}
export type reducerFunc = (state: CalendarState, action: Action, calendar: Calendar) => CalendarState;
export type Action = {
type: 'INIT';
} | // wont it create another rerender?
{
type: 'PREV';
} | {
type: 'NEXT';
} | {
type: 'SET_DATE';
dateMarker: DateMarker;
} | {
type: 'SET_VIEW_TYPE';
viewType: string;
dateMarker?: DateMarker;
} | {
type: 'SELECT_DATES';
selection: DateSpan;
} | {
type: 'UNSELECT_DATES';
} | {
type: 'SELECT_EVENT';
eventInstanceId: string;
} | {
type: 'UNSELECT_EVENT';
} | {
type: 'SET_EVENT_DRAG';
state: EventInteractionState;
} | {
type: 'UNSET_EVENT_DRAG';
} | {
type: 'SET_EVENT_RESIZE';
state: EventInteractionState;
} | {
type: 'UNSET_EVENT_RESIZE';
} | {
type: 'ADD_EVENT_SOURCES';
sources: EventSource[];
} | {
type: 'REMOVE_EVENT_SOURCE';
sourceId: string;
} | {
type: 'REMOVE_ALL_EVENT_SOURCES';
} | {
type: 'FETCH_EVENT_SOURCES';
sourceIds?: string[];
} | // if no sourceIds, fetch all
{
type: 'CHANGE_TIMEZONE';
oldDateEnv: DateEnv;
} | {
type: 'RECEIVE_EVENTS';
sourceId: string;
fetchId: string;
fetchRange: DateRange | null;
rawEvents: EventInput[];
} | {
type: 'RECEIVE_EVENT_ERROR';
sourceId: string;
fetchId: string;
fetchRange: DateRange | null;
error: EventSourceError;
} | // need all these?
{
type: 'ADD_EVENTS';
eventStore: EventStore;
} | {
type: 'MERGE_EVENTS';
eventStore: EventStore;
} | {
type: 'MUTATE_EVENTS';
instanceId: string;
mutation: EventMutation;
fromApi?: boolean;
} | {
type: 'REMOVE_EVENT_DEF';
defId: string;
} | {
type: 'REMOVE_EVENT_INSTANCES';
instances: EventInstanceHash;
} | {
type: 'REMOVE_ALL_EVENTS';
} | {
type: 'RESET_EVENTS';
};
}
declare module '@fullcalendar/core/CalendarComponent' {
import Component, {ComponentContext} from '@fullcalendar/core/component/Component';
import {ViewSpec} from '@fullcalendar/core/structs/view-spec';
import View from '@fullcalendar/core/View';
import Toolbar from '@fullcalendar/core/Toolbar';
import DateProfileGenerator, {DateProfile} from '@fullcalendar/core/DateProfileGenerator';
import {EventStore} from '@fullcalendar/core/structs/event-store';
import {EventUiHash} from '@fullcalendar/core/component/event-ui';
import {BusinessHoursInput} from '@fullcalendar/core/structs/business-hours';
import {DateMarker} from '@fullcalendar/core/datelib/marker';
import {CalendarState} from '@fullcalendar/core/reducers/types';
export interface CalendarComponentProps extends CalendarState {
viewSpec: ViewSpec;
dateProfileGenerator: DateProfileGenerator;
eventUiBases: EventUiHash;
}
export {CalendarComponent as default, CalendarComponent};
class CalendarComponent extends Component<CalendarComponentProps> {
view: View;
header: Toolbar;
footer: Toolbar;
computeTitle: (dateProfile: any, viewOptions: any) => string;
parseBusinessHours: (input: BusinessHoursInput) => EventStore;
el: HTMLElement;
contentEl: HTMLElement;
isHeightAuto: boolean;
viewHeight: number;
constructor(context: ComponentContext, el: HTMLElement);
destroy(): void;
toggleElClassNames(bool: boolean): void;
render(props: CalendarComponentProps): void;
renderToolbars(viewSpec: ViewSpec, dateProfile: DateProfile, currentDate: DateMarker, dateProfileGenerator: DateProfileGenerator, title: string): void;
renderView(props: CalendarComponentProps, title: string): void;
updateSize(isResize?: boolean): void;
computeHeightVars(): void;
queryToolbarsHeight(): number;
freezeHeight(): void;
thawHeight(): void;
}
}
declare module '@fullcalendar/core/common/DayHeader' {
import Component, {ComponentContext} from '@fullcalendar/core/component/Component';
import {DateMarker} from '@fullcalendar/core/datelib/marker';
import {DateProfile} from '@fullcalendar/core/DateProfileGenerator';
export interface DayTableHeaderProps {
dates: DateMarker[];
dateProfile: DateProfile;
datesRepDistinctDays: boolean;
renderIntroHtml?: () => string;
}
export {DayHeader as default, DayHeader};
class DayHeader extends Component<DayTableHeaderProps> {
el: HTMLElement;
thead: HTMLElement;
constructor(context: ComponentContext, parentEl: HTMLElement);
destroy(): void;
render(props: DayTableHeaderProps): void;
}
}
declare module '@fullcalendar/core/common/table-utils' {
import {DateMarker} from '@fullcalendar/core/datelib/marker';
import {DateProfile} from '@fullcalendar/core/DateProfileGenerator';
import {ComponentContext} from '@fullcalendar/core/component/Component';
export function computeFallbackHeaderFormat(datesRepDistinctDays: boolean, dayCnt: number): {
weekday: string;
month?: undefined;
day?: undefined;
omitCommas?: undefined;
} | {
weekday: string;
month: string;
day: string;
omitCommas: boolean;
};
export function renderDateCell(dateMarker: DateMarker, dateProfile: DateProfile, datesRepDistinctDays: any, colCnt: any, colHeadFormat: any, context: ComponentContext, colspan?: any, otherAttrs?: any): string;
}
declare module '@fullcalendar/core/common/DaySeries' {
import DateProfileGenerator from '@fullcalendar/core/DateProfileGenerator';
import {DateMarker} from '@fullcalendar/core/datelib/marker';
import {DateRange} from '@fullcalendar/core/datelib/date-range';
export interface DaySeriesSeg {
firstIndex: number;
lastIndex: number;
isStart: boolean;
isEnd: boolean;
}
export {DaySeries as default, DaySeries};
class DaySeries {
cnt: number;
dates: DateMarker[];
indices: number[];
constructor(range: DateRange, dateProfileGenerator: DateProfileGenerator);
sliceRange(range: DateRange): DaySeriesSeg | null;
}
}
declare module '@fullcalendar/core/interactions/event-interaction-state' {
import {EventStore} from '@fullcalendar/core/structs/event-store';
import {Seg} from '@fullcalendar/core/component/DateComponent';
export interface EventInteractionState {
affectedEvents: EventStore;
mutatedEvents: EventStore;
isEvent: boolean;
origSeg: Seg | null;
}
}
declare module '@fullcalendar/core/component/event-rendering' {
import {EventDef, EventDefHash, EventTuple} from '@fullcalendar/core/structs/event';
import {EventStore} from '@fullcalendar/core/structs/event-store';
import {DateRange} from '@fullcalendar/core/datelib/date-range';
import {Duration} from '@fullcalendar/core/datelib/duration';
import {Seg} from '@fullcalendar/core/component/DateComponent';
import View from '@fullcalendar/core/View';
import {EventUi, EventUiHash} from '@fullcalendar/core/component/event-ui';
export interface EventRenderRange extends EventTuple {
ui: EventUi;
range: DateRange;
isStart: boolean;
isEnd: boolean;
}
export function sliceEventStore(eventStore: EventStore, eventUiBases: EventUiHash, framingRange: DateRange, nextDayThreshold?: Duration): {
bg: EventRenderRange[];
fg: EventRenderRange[];
};
export function hasBgRendering(def: EventDef): boolean;
export function filterSegsViaEls(view: View, segs: Seg[], isMirror: boolean): Seg[];
export function getElSeg(el: HTMLElement): Seg | null;
export function compileEventUis(eventDefs: EventDefHash, eventUiBases: EventUiHash): {
[key: string]: EventUi;
};
export function compileEventUi(eventDef: EventDef, eventUiBases: EventUiHash): EventUi;
}
declare module '@fullcalendar/core/common/DayTable' {
import DaySeries from '@fullcalendar/core/common/DaySeries';
import {DateRange} from '@fullcalendar/core/datelib/date-range';
import {DateMarker} from '@fullcalendar/core/datelib/marker';
import {Seg} from '@fullcalendar/core/component/DateComponent';
export interface DayTableSeg extends Seg {
row: number;
firstCol: number;
lastCol: number;
}
export interface DayTableCell {
date: DateMarker;
htmlAttrs?: string;
}
export { DayTable as default, DayTable };
class DayTable {
rowCnt: number;
colCnt: number;
cells: DayTableCell[][];
headerDates: DateMarker[];
constructor(daySeries: DaySeries, breakOnWeeks: boolean);
sliceRange(range: DateRange): DayTableSeg[];
}
}
declare module '@fullcalendar/core/common/slicing-utils' {
import {DateRange} from '@fullcalendar/core/datelib/date-range';
import {EventStore} from '@fullcalendar/core/structs/event-store';
import {EventUiHash} from '@fullcalendar/core/component/event-ui';
import {DateProfile} from '@fullcalendar/core/DateProfileGenerator';
import DateComponent, {EventSegUiInteractionState, Seg} from '@fullcalendar/core/component/DateComponent';
import {DateSpan} from '@fullcalendar/core/structs/date-span';
import {EventInteractionState} from '@fullcalendar/core/interactions/event-interaction-state';
import {Duration} from '@fullcalendar/core/datelib/duration';
import {DateMarker} from '@fullcalendar/core/datelib/marker';
export interface SliceableProps {
dateSelection: DateSpan;
businessHours: EventStore;
eventStore: EventStore;
eventDrag: EventInteractionState | null;
eventResize: EventInteractionState | null;
eventSelection: string;
eventUiBases: EventUiHash;
}
export interface SlicedProps<SegType extends Seg> {
dateSelectionSegs: SegType[];
businessHourSegs: SegType[];
fgEventSegs: SegType[];
bgEventSegs: SegType[];
eventDrag: EventSegUiInteractionState | null;
eventResize: EventSegUiInteractionState | null;
eventSelection: string;
}
export { Slicer as default, Slicer };
abstract class Slicer<SegType extends Seg, ExtraArgs extends any[] = []> {
abstract sliceRange(dateRange: DateRange, ...extraArgs: ExtraArgs): SegType[];
sliceProps(props: SliceableProps, dateProfile: DateProfile, nextDayThreshold: Duration | null, component: DateComponent<any>, // TODO: kill
...extraArgs: ExtraArgs): SlicedProps<SegType>;
sliceNowDate(// does not memoize
date: DateMarker, component: DateComponent<any>, // TODO: kill
...extraArgs: ExtraArgs): SegType[];
}
}
declare module '@fullcalendar/core/structs/event-mutation' {
import {Duration} from '@fullcalendar/core/datelib/duration';
import {EventStore} from '@fullcalendar/core/structs/event-store';
import {EventDef} from '@fullcalendar/core/structs/event';
import Calendar from '@fullcalendar/core/Calendar';
import {EventUiHash} from '@fullcalendar/core/component/event-ui';
export interface EventMutation {
datesDelta?: Duration;
startDelta?: Duration;
endDelta?: Duration;
standardProps?: any;
extendedProps?: any;
}
export function applyMutationToEventStore(eventStore: EventStore, eventConfigBase: EventUiHash, mutation: EventMutation, calendar: Calendar): EventStore;
export type eventDefMutationApplier = (eventDef: EventDef, mutation: EventMutation, calendar: Calendar) => void;
}
declare module '@fullcalendar/core/validation' {
import {EventStore} from '@fullcalendar/core/structs/event-store';
import Calendar from '@fullcalendar/core/Calendar';
import {DateSpan, DateSpanApi} from '@fullcalendar/core/structs/date-span';
import EventApi from '@fullcalendar/core/api/EventApi';
import {EventInput} from '@fullcalendar/core/structs/event';
import {EventInteractionState} from '@fullcalendar/core/interactions/event-interaction-state';
import {SplittableProps} from '@fullcalendar/core/component/event-splitting';
export type ConstraintInput = 'businessHours' | string | EventInput | EventInput[];
export type Constraint = 'businessHours' | string | EventStore | false;
export type OverlapFunc = ((stillEvent: EventApi, movingEvent: EventApi | null) => boolean);
export type AllowFunc = (span: DateSpanApi, movingEvent: EventApi | null) => boolean;
export type isPropsValidTester = (props: SplittableProps, calendar: Calendar) => boolean;
export function isInteractionValid(interaction: EventInteractionState, calendar: Calendar): boolean;
export function isDateSelectionValid(dateSelection: DateSpan, calendar: Calendar): boolean;
export function isPropsValid(state: SplittableProps, calendar: Calendar, dateSpanMeta?: {}, filterConfig?: any): boolean;
export function normalizeConstraint(input: ConstraintInput, calendar: Calendar): Constraint | null;
}
declare module '@fullcalendar/core/api/EventApi' {
import Calendar from '@fullcalendar/core/Calendar';
import {EventDef, EventInstance} from '@fullcalendar/core/structs/event';
import {EventMutation} from '@fullcalendar/core/structs/event-mutation';
import {DateInput} from '@fullcalendar/core/datelib/env';
import {DurationInput} from '@fullcalendar/core/datelib/duration';
import {FormatterInput} from '@fullcalendar/core/datelib/formatting';
import EventSourceApi from '@fullcalendar/core/api/EventSourceApi';
export {EventApi as default, EventApi};
class EventApi {
_calendar: Calendar;
_def: EventDef;
_instance: EventInstance | null;
constructor(calendar: Calendar, def: EventDef, instance?: EventInstance);
setProp(name: string, val: string): void;
setExtendedProp(name: string, val: any): void;
setStart(startInput: DateInput, options?: {
granularity?: string;
maintainDuration?: boolean;
}): void;
setEnd(endInput: DateInput | null, options?: {
granularity?: string;
}): void;
setDates(startInput: DateInput, endInput: DateInput | null, options?: {
allDay?: boolean;
granularity?: string;
}): void;
moveStart(deltaInput: DurationInput): void;
moveEnd(deltaInput: DurationInput): void;
moveDates(deltaInput: DurationInput): void;
setAllDay(allDay: boolean, options?: {
maintainDuration?: boolean;
}): void;
formatRange(formatInput: FormatterInput): any;
mutate(mutation: EventMutation): void;
remove(): void;
readonly source: EventSourceApi | null;
readonly start: Date | null;
readonly end: Date | null;
readonly id: string;
readonly groupId: string;
readonly allDay: boolean;
readonly title: string;
readonly url: string;
readonly rendering: string;
readonly startEditable: boolean;
readonly durationEditable: boolean;
readonly constraint: any;
readonly overlap: any;
readonly allow: any;
readonly backgroundColor: string;
readonly borderColor: string;
readonly textColor: string;
readonly classNames: string[];
readonly extendedProps: any;
}
}
declare module '@fullcalendar/core/util/requestJson' {
export default function requestJson(method: string, url: string, params: object, successCallback: any, failureCallback: any): void;
}
declare module '@fullcalendar/core/datelib/locale' {
export type LocaleCodeArg = string | string[];
export type LocaleSingularArg = LocaleCodeArg | RawLocale;
export interface Locale {
codeArg: LocaleCodeArg;
codes: string[];
week: {
dow: number;
doy: number;
};
simpleNumberFormat: Intl.NumberFormat;
options: any;
}
export interface RawLocale {
code: string;
[otherProp: string]: any;
}
export type RawLocaleMap = {
[code: string]: RawLocale;
};
export interface RawLocaleInfo {
map: RawLocaleMap;
defaultCode: string;
}
export function parseRawLocales(explicitRawLocales: RawLocale[]): RawLocaleInfo;
export function buildLocale(inputSingular: LocaleSingularArg, available: RawLocaleMap): Locale;
}
declare module '@fullcalendar/core/OptionsManager' {
export { OptionsManager as default, OptionsManager };
class OptionsManager {
dirDefaults: any;
localeDefaults: any;
overrides: any;
dynamicOverrides: any;
computed: any;
constructor(overrides: any);
mutate(updates: any, removals: string[], isDynamic?: boolean): void;
compute(): void;
}
}
declare module '@fullcalendar/core/api/EventSourceApi' {
import Calendar from '@fullcalendar/core/Calendar';
import {EventSource} from '@fullcalendar/core/structs/event-source';
export { EventSourceApi as default, EventSourceApi };
class EventSourceApi {
calendar: Calendar;
internalEventSource: EventSource;
constructor(calendar: Calendar, internalEventSource: EventSource);
remove(): void;
refetch(): void;
readonly id: string;
readonly url: string;
}
}
declare module '@fullcalendar/core/structs/view-config' {
import View from '@fullcalendar/core/View';
import {ViewSpec} from '@fullcalendar/core/structs/view-spec';
import {ComponentContext} from '@fullcalendar/core/component/Component';
import DateProfileGenerator from '@fullcalendar/core/DateProfileGenerator';
export type ViewClass = new (context: ComponentContext, viewSpec: ViewSpec, dateProfileGenerator: DateProfileGenerator, parentEl: HTMLElement) => View;
export interface ViewConfigObjectInput {
type?: string;
class?: ViewClass;
[optionName: string]: any;
}
export type ViewConfigInput = ViewClass | ViewConfigObjectInput;
export type ViewConfigInputHash = {
[viewType: string]: ViewConfigInput;
};
export interface ViewConfig {
superType: string;
class: ViewClass | null;
options: any;
}
export type ViewConfigHash = {
[viewType: string]: ViewConfig;
};
export function parseViewConfigs(inputs: ViewConfigInputHash): ViewConfigHash;
}
declare module '@fullcalendar/core/datelib/calendar-system' {
import {DateMarker} from '@fullcalendar/core/datelib/marker';
export interface CalendarSystem {
getMarkerYear(d: DateMarker): number;
getMarkerMonth(d: DateMarker): number;
getMarkerDay(d: DateMarker): number;
arrayToMarker(arr: number[]): DateMarker;
markerToArray(d: DateMarker): number[];
}
export function registerCalendarSystem(name: any, theClass: any): void;
export function createCalendarSystem(name: any): any;
}
declare module '@fullcalendar/core/datelib/formatting-cmd' {
import {
DateFormatter,
DateFormattingContext,
VerboseFormattingArg,
ZonedMarker
} from '@fullcalendar/core/datelib/formatting';
export type CmdFormatterFunc = (cmd: string, arg: VerboseFormattingArg) => string;
export class CmdFormatter implements DateFormatter {
cmdStr: string;
separator: string;
constructor(cmdStr: string, separator?: string);
format(date: ZonedMarker, context: DateFormattingContext): string;
formatRange(start: ZonedMarker, end: ZonedMarker, context: DateFormattingContext): string;
}
}
declare module '@fullcalendar/core/datelib/formatting-func' {
import {
DateFormatter,
DateFormattingContext,
VerboseFormattingArg,
ZonedMarker
} from '@fullcalendar/core/datelib/formatting';
export type FuncFormatterFunc = (arg: VerboseFormattingArg) => string;
export class FuncFormatter implements DateFormatter {
func: FuncFormatterFunc;
constructor(func: FuncFormatterFunc);
format(date: ZonedMarker, context: DateFormattingContext): string;
formatRange(start: ZonedMarker, end: ZonedMarker, context: DateFormattingContext): string;
}
}
declare module '@fullcalendar/core/event-sources/func-event-source' {
import {EventSourceError} from '@fullcalendar/core/structs/event-source';
import {EventInput} from '@fullcalendar/core/structs/event';
export type EventSourceFunc = (arg: {
start: Date;
end: Date;
timeZone: string;
}, successCallback: (events: EventInput[]) => void, failureCallback: (error: EventSourceError) => void) => (void | PromiseLike<EventInput[]>);
const _default: import("@fullcalendar/core/plugin-system").PluginDef;
export default _default;
}
declare module '@fullcalendar/core/interactions/external-element-dragging' {
import {DateSpan} from '@fullcalendar/core/structs/date-span';
import {DragMeta} from '@fullcalendar/core/structs/drag-meta';
export type ExternalDefTransform = (dateSpan: DateSpan, dragMeta: DragMeta) => any;
}
declare module '@fullcalendar/core/Toolbar' {
import Component, {ComponentContext} from '@fullcalendar/core/component/Component';
export interface ToolbarRenderProps {
layout: any;
title: string;
activeButton: string;
isTodayEnabled: boolean;
isPrevEnabled: boolean;
isNextEnabled: boolean;
}
export {Toolbar as default, Toolbar};
class Toolbar extends Component<ToolbarRenderProps> {
el: HTMLElement;
viewsWithButtons: any;
constructor(context: ComponentContext, extraClassName: any);
destroy(): void;
render(props: ToolbarRenderProps): void;
renderLayout(layout: any): void;
unrenderLayout(): void;
renderSection(position: any, buttonStr: any): HTMLElement;
updateToday(isTodayEnabled: any): void;
updatePrev(isPrevEnabled: any): void;
updateNext(isNextEnabled: any): void;
updateTitle(text: any): void;
updateActiveButton(buttonName?: any): void;
toggleButtonEnabled(buttonName: any, bool: any): void;
}
}
Source diff could not be displayed: it is too large. Options to address this: view the blob.