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

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 1273 deletions
/*!
FullCalendar Luxon Plugin v4.3.0
Docs & License: https://fullcalendar.io/
(c) 2019 Adam Shaw
*/
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('luxon'), require('@fullcalendar/core')) :
typeof define === 'function' && define.amd ? define(['exports', 'luxon', '@fullcalendar/core'], factory) :
(global = global || self, factory(global.FullCalendarLuxon = {}, global.luxon, global.FullCalendar));
}(this, function (exports, luxon, core) { 'use strict';
/*! *****************************************************************************
Copyright (c) Microsoft Corporation. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use
this file except in compliance with the License. You may obtain a copy of the
License at http://www.apache.org/licenses/LICENSE-2.0
THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
MERCHANTABLITY OR NON-INFRINGEMENT.
See the Apache Version 2.0 License for specific language governing permissions
and limitations under the License.
***************************************************************************** */
/* global Reflect, Promise */
var extendStatics = function(d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
function __extends(d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
}
var __assign = function() {
__assign = Object.assign || function __assign(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
function toDateTime(date, calendar) {
if (!(calendar instanceof core.Calendar)) {
throw new Error('must supply a Calendar instance');
}
return luxon.DateTime.fromJSDate(date, {
zone: calendar.dateEnv.timeZone,
locale: calendar.dateEnv.locale.codes[0]
});
}
function toDuration(duration, calendar) {
if (!(calendar instanceof core.Calendar)) {
throw new Error('must supply a Calendar instance');
}
return luxon.Duration.fromObject(__assign({}, duration, { locale: calendar.dateEnv.locale.codes[0] }));
}
var LuxonNamedTimeZone = /** @class */ (function (_super) {
__extends(LuxonNamedTimeZone, _super);
function LuxonNamedTimeZone() {
return _super !== null && _super.apply(this, arguments) || this;
}
LuxonNamedTimeZone.prototype.offsetForArray = function (a) {
return arrayToLuxon(a, this.timeZoneName).offset;
};
LuxonNamedTimeZone.prototype.timestampToArray = function (ms) {
return luxonToArray(luxon.DateTime.fromMillis(ms, {
zone: this.timeZoneName
}));
};
return LuxonNamedTimeZone;
}(core.NamedTimeZoneImpl));
function formatWithCmdStr(cmdStr, arg) {
var cmd = parseCmdStr(cmdStr);
if (arg.end) {
var start = arrayToLuxon(arg.start.array, arg.timeZone, arg.localeCodes[0]);
var end = arrayToLuxon(arg.end.array, arg.timeZone, arg.localeCodes[0]);
return formatRange(cmd, start.toFormat.bind(start), end.toFormat.bind(end), arg.separator);
}
return arrayToLuxon(arg.date.array, arg.timeZone, arg.localeCodes[0]).toFormat(cmd.whole);
}
var main = core.createPlugin({
cmdFormatter: formatWithCmdStr,
namedTimeZonedImpl: LuxonNamedTimeZone
});
function luxonToArray(datetime) {
return [
datetime.year,
datetime.month - 1,
datetime.day,
datetime.hour,
datetime.minute,
datetime.second,
datetime.millisecond
];
}
function arrayToLuxon(arr, timeZone, locale) {
return luxon.DateTime.fromObject({
zone: timeZone,
locale: locale,
year: arr[0],
month: arr[1] + 1,
day: arr[2],
hour: arr[3],
minute: arr[4],
second: arr[5],
millisecond: arr[6]
});
}
function parseCmdStr(cmdStr) {
var parts = cmdStr.match(/^(.*?)\{(.*)\}(.*)$/); // TODO: lookbehinds for escape characters
if (parts) {
var middle = parseCmdStr(parts[2]);
return {
head: parts[1],
middle: middle,
tail: parts[3],
whole: parts[1] + middle.whole + parts[3]
};
}
else {
return {
head: null,
middle: null,
tail: null,
whole: cmdStr
};
}
}
function formatRange(cmd, formatStart, formatEnd, separator) {
if (cmd.middle) {
var startHead = formatStart(cmd.head);
var startMiddle = formatRange(cmd.middle, formatStart, formatEnd, separator);
var startTail = formatStart(cmd.tail);
var endHead = formatEnd(cmd.head);
var endMiddle = formatRange(cmd.middle, formatStart, formatEnd, separator);
var endTail = formatEnd(cmd.tail);
if (startHead === endHead && startTail === endTail) {
return startHead +
(startMiddle === endMiddle ? startMiddle : startMiddle + separator + endMiddle) +
startTail;
}
}
var startWhole = formatStart(cmd.whole);
var endWhole = formatEnd(cmd.whole);
if (startWhole === endWhole) {
return startWhole;
}
else {
return startWhole + separator + endWhole;
}
}
exports.default = main;
exports.toDateTime = toDateTime;
exports.toDuration = toDuration;
Object.defineProperty(exports, '__esModule', { value: true });
}));
/*!
FullCalendar Luxon Plugin v4.3.0
Docs & License: https://fullcalendar.io/
(c) 2019 Adam Shaw
*/
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("luxon"),require("@fullcalendar/core")):"function"==typeof define&&define.amd?define(["exports","luxon","@fullcalendar/core"],t):t((e=e||self).FullCalendarLuxon={},e.luxon,e.FullCalendar)}(this,function(e,t,n){"use strict";var o=function(e,t){return(o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)};var r=function(){return(r=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e}).apply(this,arguments)};var a=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return function(e,t){function n(){this.constructor=e}o(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}(n,e),n.prototype.offsetForArray=function(e){return l(e,this.timeZoneName).offset},n.prototype.timestampToArray=function(e){return[(n=t.DateTime.fromMillis(e,{zone:this.timeZoneName})).year,n.month-1,n.day,n.hour,n.minute,n.second,n.millisecond];var n},n}(n.NamedTimeZoneImpl);var i=n.createPlugin({cmdFormatter:function(e,t){var n=function e(t){var n=t.match(/^(.*?)\{(.*)\}(.*)$/);if(n){var o=e(n[2]);return{head:n[1],middle:o,tail:n[3],whole:n[1]+o.whole+n[3]}}return{head:null,middle:null,tail:null,whole:t}}(e);if(t.end){var o=l(t.start.array,t.timeZone,t.localeCodes[0]),r=l(t.end.array,t.timeZone,t.localeCodes[0]);return function e(t,n,o,r){if(t.middle){var a=n(t.head),i=e(t.middle,n,o,r),l=n(t.tail),u=o(t.head),c=e(t.middle,n,o,r),d=o(t.tail);if(a===u&&l===d)return a+(i===c?i:i+r+c)+l}var f=n(t.whole),m=o(t.whole);return f===m?f:f+r+m}(n,o.toFormat.bind(o),r.toFormat.bind(r),t.separator)}return l(t.date.array,t.timeZone,t.localeCodes[0]).toFormat(n.whole)},namedTimeZonedImpl:a});function l(e,n,o){return t.DateTime.fromObject({zone:n,locale:o,year:e[0],month:e[1]+1,day:e[2],hour:e[3],minute:e[4],second:e[5],millisecond:e[6]})}e.default=i,e.toDateTime=function(e,o){if(!(o instanceof n.Calendar))throw new Error("must supply a Calendar instance");return t.DateTime.fromJSDate(e,{zone:o.dateEnv.timeZone,locale:o.dateEnv.locale.codes[0]})},e.toDuration=function(e,o){if(!(o instanceof n.Calendar))throw new Error("must supply a Calendar instance");return t.Duration.fromObject(r({},e,{locale:o.dateEnv.locale.codes[0]}))},Object.defineProperty(e,"__esModule",{value:!0})});
\ No newline at end of file
{
"name": "@fullcalendar/luxon",
"version": "4.3.0",
"title": "FullCalendar Luxon Plugin",
"description": "A connector to the Luxon date library",
"keywords": [
"calendar",
"event",
"full-sized"
],
"homepage": "https://fullcalendar.io/",
"docs": "https://fullcalendar.io/docs/luxon-plugin",
"bugs": "https://fullcalendar.io/reporting-bugs",
"repository": {
"type": "git",
"url": "https://github.com/fullcalendar/fullcalendar.git",
"homepage": "https://github.com/fullcalendar/fullcalendar"
},
"license": "MIT",
"author": {
"name": "Adam Shaw",
"email": "arshaw@arshaw.com",
"url": "http://arshaw.com/"
},
"copyright": "2019 Adam Shaw",
"peerDependencies": {
"@fullcalendar/core": "~4.3.0",
"luxon": "^1.12.1"
},
"main": "main.js",
"module": "main.esm.js",
"unpkg": "main.min.js",
"types": "main.d.ts"
}
Copyright (c) 2019 Adam Shaw
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
# FullCalendar Moment Timezone Plugin
A connector to the moment-timezone library
[View the docs &raquo;](https://fullcalendar.io/docs/moment-plugins#moment-timezone)
This package was created from the [FullCalendar monorepo &raquo;](https://github.com/fullcalendar/fullcalendar)
// Generated by dts-bundle v0.7.3-fork.1
// Dependencies for this module:
// ../../../../../moment-timezone/builds/moment-timezone-with-data
// ../../../../../@fullcalendar/core
declare module '@fullcalendar/moment-timezone' {
import 'moment-timezone/builds/moment-timezone-with-data';
const _default: import("@fullcalendar/core").PluginDef;
export default _default;
}
/*!
FullCalendar Moment Timezone Plugin v4.3.0
Docs & License: https://fullcalendar.io/
(c) 2019 Adam Shaw
*/
import * as momentNs from 'moment';
import 'moment-timezone/builds/moment-timezone-with-data';
import {createPlugin, NamedTimeZoneImpl} from '@fullcalendar/core';
/*! *****************************************************************************
Copyright (c) Microsoft Corporation. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use
this file except in compliance with the License. You may obtain a copy of the
License at http://www.apache.org/licenses/LICENSE-2.0
THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
MERCHANTABLITY OR NON-INFRINGEMENT.
See the Apache Version 2.0 License for specific language governing permissions
and limitations under the License.
***************************************************************************** */
/* global Reflect, Promise */
var extendStatics = function(d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
function __extends(d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
}
var moment = momentNs; // the directly callable function
var MomentNamedTimeZone = /** @class */ (function (_super) {
__extends(MomentNamedTimeZone, _super);
function MomentNamedTimeZone() {
return _super !== null && _super.apply(this, arguments) || this;
}
MomentNamedTimeZone.prototype.offsetForArray = function (a) {
return moment.tz(a, this.timeZoneName).utcOffset();
};
MomentNamedTimeZone.prototype.timestampToArray = function (ms) {
return moment.tz(ms, this.timeZoneName).toArray();
};
return MomentNamedTimeZone;
}(NamedTimeZoneImpl));
var main = createPlugin({
namedTimeZonedImpl: MomentNamedTimeZone
});
export default main;
/*!
FullCalendar Moment Timezone Plugin v4.3.0
Docs & License: https://fullcalendar.io/
(c) 2019 Adam Shaw
*/
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('moment'), require('moment-timezone/builds/moment-timezone-with-data'), require('@fullcalendar/core')) :
typeof define === 'function' && define.amd ? define(['exports', 'moment', 'moment-timezone/builds/moment-timezone-with-data', '@fullcalendar/core'], factory) :
(global = global || self, factory(global.FullCalendarMomentTimezone = {}, global.moment, global.moment, global.FullCalendar));
}(this, function (exports, momentNs, momentTimezoneWithData, core) { 'use strict';
/*! *****************************************************************************
Copyright (c) Microsoft Corporation. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use
this file except in compliance with the License. You may obtain a copy of the
License at http://www.apache.org/licenses/LICENSE-2.0
THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
MERCHANTABLITY OR NON-INFRINGEMENT.
See the Apache Version 2.0 License for specific language governing permissions
and limitations under the License.
***************************************************************************** */
/* global Reflect, Promise */
var extendStatics = function(d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
function __extends(d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
}
var moment = momentNs; // the directly callable function
var MomentNamedTimeZone = /** @class */ (function (_super) {
__extends(MomentNamedTimeZone, _super);
function MomentNamedTimeZone() {
return _super !== null && _super.apply(this, arguments) || this;
}
MomentNamedTimeZone.prototype.offsetForArray = function (a) {
return moment.tz(a, this.timeZoneName).utcOffset();
};
MomentNamedTimeZone.prototype.timestampToArray = function (ms) {
return moment.tz(ms, this.timeZoneName).toArray();
};
return MomentNamedTimeZone;
}(core.NamedTimeZoneImpl));
var main = core.createPlugin({
namedTimeZonedImpl: MomentNamedTimeZone
});
exports.default = main;
Object.defineProperty(exports, '__esModule', { value: true });
}));
/*!
FullCalendar Moment Timezone Plugin v4.3.0
Docs & License: https://fullcalendar.io/
(c) 2019 Adam Shaw
*/
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("moment"),require("moment-timezone/builds/moment-timezone-with-data"),require("@fullcalendar/core")):"function"==typeof define&&define.amd?define(["exports","moment","moment-timezone/builds/moment-timezone-with-data","@fullcalendar/core"],t):t((e=e||self).FullCalendarMomentTimezone={},e.moment,e.moment,e.FullCalendar)}(this,function(e,t,n,o){"use strict";var r=function(e,t){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)};var i=t,u=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return function(e,t){function n(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}(t,e),t.prototype.offsetForArray=function(e){return i.tz(e,this.timeZoneName).utcOffset()},t.prototype.timestampToArray=function(e){return i.tz(e,this.timeZoneName).toArray()},t}(o.NamedTimeZoneImpl),m=o.createPlugin({namedTimeZonedImpl:u});e.default=m,Object.defineProperty(e,"__esModule",{value:!0})});
\ No newline at end of file
{
"name": "@fullcalendar/moment-timezone",
"version": "4.3.0",
"title": "FullCalendar Moment Timezone Plugin",
"description": "A connector to the moment-timezone library",
"keywords": [
"calendar",
"event",
"full-sized"
],
"homepage": "https://fullcalendar.io/",
"docs": "https://fullcalendar.io/docs/moment-plugins#moment-timezone",
"bugs": "https://fullcalendar.io/reporting-bugs",
"repository": {
"type": "git",
"url": "https://github.com/fullcalendar/fullcalendar.git",
"homepage": "https://github.com/fullcalendar/fullcalendar"
},
"license": "MIT",
"author": {
"name": "Adam Shaw",
"email": "arshaw@arshaw.com",
"url": "http://arshaw.com/"
},
"copyright": "2019 Adam Shaw",
"peerDependencies": {
"@fullcalendar/core": "~4.3.0",
"moment": "^2.24.0",
"moment-timezone": "^0.5.25"
},
"main": "main.js",
"module": "main.esm.js",
"unpkg": "main.min.js",
"types": "main.d.ts"
}
Copyright (c) 2019 Adam Shaw
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
# FullCalendar Moment Plugin
A connector to the MomentJS date library
[View the docs &raquo;](https://fullcalendar.io/docs/moment-plugins)
This package was created from the [FullCalendar monorepo &raquo;](https://github.com/fullcalendar/fullcalendar)
// Generated by dts-bundle v0.7.3-fork.1
// Dependencies for this module:
// ../../../../../moment
// ../../../../../@fullcalendar/core
declare module '@fullcalendar/moment' {
import * as momentNs from 'moment';
import {Calendar, Duration} from '@fullcalendar/core';
export function toMoment(date: Date, calendar: Calendar): momentNs.Moment;
export function toDuration(fcDuration: Duration): momentNs.Duration;
const _default: import("@fullcalendar/core").PluginDef;
export default _default;
}
/*!
FullCalendar Moment Plugin v4.3.0
Docs & License: https://fullcalendar.io/
(c) 2019 Adam Shaw
*/
import * as momentNs from 'moment';
import {Calendar, createPlugin} from '@fullcalendar/core';
var moment = momentNs; // the directly callable function
function toMoment(date, calendar) {
if (!(calendar instanceof Calendar)) {
throw new Error('must supply a Calendar instance');
}
return convertToMoment(date, calendar.dateEnv.timeZone, null, calendar.dateEnv.locale.codes[0]);
}
function toDuration(fcDuration) {
return moment.duration(fcDuration); // moment accepts all the props that fc.Duration already has!
}
function formatWithCmdStr(cmdStr, arg) {
var cmd = parseCmdStr(cmdStr);
if (arg.end) {
var startMom = convertToMoment(arg.start.array, arg.timeZone, arg.start.timeZoneOffset, arg.localeCodes[0]);
var endMom = convertToMoment(arg.end.array, arg.timeZone, arg.end.timeZoneOffset, arg.localeCodes[0]);
return formatRange(cmd, createMomentFormatFunc(startMom), createMomentFormatFunc(endMom), arg.separator);
}
return convertToMoment(arg.date.array, arg.timeZone, arg.date.timeZoneOffset, arg.localeCodes[0]).format(cmd.whole); // TODO: test for this
}
var main = createPlugin({
cmdFormatter: formatWithCmdStr
});
function createMomentFormatFunc(mom) {
return function (cmdStr) {
return cmdStr ? mom.format(cmdStr) : ''; // because calling with blank string results in ISO8601 :(
};
}
function convertToMoment(input, timeZone, timeZoneOffset, locale) {
var mom;
if (timeZone === 'local') {
mom = moment(input);
}
else if (timeZone === 'UTC') {
mom = moment.utc(input);
}
else if (moment.tz) {
mom = moment.tz(input, timeZone);
}
else {
mom = moment.utc(input);
if (timeZoneOffset != null) {
mom.utcOffset(timeZoneOffset);
}
}
mom.locale(locale);
return mom;
}
function parseCmdStr(cmdStr) {
var parts = cmdStr.match(/^(.*?)\{(.*)\}(.*)$/); // TODO: lookbehinds for escape characters
if (parts) {
var middle = parseCmdStr(parts[2]);
return {
head: parts[1],
middle: middle,
tail: parts[3],
whole: parts[1] + middle.whole + parts[3]
};
}
else {
return {
head: null,
middle: null,
tail: null,
whole: cmdStr
};
}
}
function formatRange(cmd, formatStart, formatEnd, separator) {
if (cmd.middle) {
var startHead = formatStart(cmd.head);
var startMiddle = formatRange(cmd.middle, formatStart, formatEnd, separator);
var startTail = formatStart(cmd.tail);
var endHead = formatEnd(cmd.head);
var endMiddle = formatRange(cmd.middle, formatStart, formatEnd, separator);
var endTail = formatEnd(cmd.tail);
if (startHead === endHead && startTail === endTail) {
return startHead +
(startMiddle === endMiddle ? startMiddle : startMiddle + separator + endMiddle) +
startTail;
}
}
var startWhole = formatStart(cmd.whole);
var endWhole = formatEnd(cmd.whole);
if (startWhole === endWhole) {
return startWhole;
}
else {
return startWhole + separator + endWhole;
}
}
export default main;
export { toDuration, toMoment };
/*!
FullCalendar Moment Plugin v4.3.0
Docs & License: https://fullcalendar.io/
(c) 2019 Adam Shaw
*/
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('moment'), require('@fullcalendar/core')) :
typeof define === 'function' && define.amd ? define(['exports', 'moment', '@fullcalendar/core'], factory) :
(global = global || self, factory(global.FullCalendarMoment = {}, global.moment, global.FullCalendar));
}(this, function (exports, momentNs, core) { 'use strict';
var moment = momentNs; // the directly callable function
function toMoment(date, calendar) {
if (!(calendar instanceof core.Calendar)) {
throw new Error('must supply a Calendar instance');
}
return convertToMoment(date, calendar.dateEnv.timeZone, null, calendar.dateEnv.locale.codes[0]);
}
function toDuration(fcDuration) {
return moment.duration(fcDuration); // moment accepts all the props that fc.Duration already has!
}
function formatWithCmdStr(cmdStr, arg) {
var cmd = parseCmdStr(cmdStr);
if (arg.end) {
var startMom = convertToMoment(arg.start.array, arg.timeZone, arg.start.timeZoneOffset, arg.localeCodes[0]);
var endMom = convertToMoment(arg.end.array, arg.timeZone, arg.end.timeZoneOffset, arg.localeCodes[0]);
return formatRange(cmd, createMomentFormatFunc(startMom), createMomentFormatFunc(endMom), arg.separator);
}
return convertToMoment(arg.date.array, arg.timeZone, arg.date.timeZoneOffset, arg.localeCodes[0]).format(cmd.whole); // TODO: test for this
}
var main = core.createPlugin({
cmdFormatter: formatWithCmdStr
});
function createMomentFormatFunc(mom) {
return function (cmdStr) {
return cmdStr ? mom.format(cmdStr) : ''; // because calling with blank string results in ISO8601 :(
};
}
function convertToMoment(input, timeZone, timeZoneOffset, locale) {
var mom;
if (timeZone === 'local') {
mom = moment(input);
}
else if (timeZone === 'UTC') {
mom = moment.utc(input);
}
else if (moment.tz) {
mom = moment.tz(input, timeZone);
}
else {
mom = moment.utc(input);
if (timeZoneOffset != null) {
mom.utcOffset(timeZoneOffset);
}
}
mom.locale(locale);
return mom;
}
function parseCmdStr(cmdStr) {
var parts = cmdStr.match(/^(.*?)\{(.*)\}(.*)$/); // TODO: lookbehinds for escape characters
if (parts) {
var middle = parseCmdStr(parts[2]);
return {
head: parts[1],
middle: middle,
tail: parts[3],
whole: parts[1] + middle.whole + parts[3]
};
}
else {
return {
head: null,
middle: null,
tail: null,
whole: cmdStr
};
}
}
function formatRange(cmd, formatStart, formatEnd, separator) {
if (cmd.middle) {
var startHead = formatStart(cmd.head);
var startMiddle = formatRange(cmd.middle, formatStart, formatEnd, separator);
var startTail = formatStart(cmd.tail);
var endHead = formatEnd(cmd.head);
var endMiddle = formatRange(cmd.middle, formatStart, formatEnd, separator);
var endTail = formatEnd(cmd.tail);
if (startHead === endHead && startTail === endTail) {
return startHead +
(startMiddle === endMiddle ? startMiddle : startMiddle + separator + endMiddle) +
startTail;
}
}
var startWhole = formatStart(cmd.whole);
var endWhole = formatEnd(cmd.whole);
if (startWhole === endWhole) {
return startWhole;
}
else {
return startWhole + separator + endWhole;
}
}
exports.default = main;
exports.toDuration = toDuration;
exports.toMoment = toMoment;
Object.defineProperty(exports, '__esModule', { value: true });
}));
/*!
FullCalendar Moment Plugin v4.3.0
Docs & License: https://fullcalendar.io/
(c) 2019 Adam Shaw
*/
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("moment"),require("@fullcalendar/core")):"function"==typeof define&&define.amd?define(["exports","moment","@fullcalendar/core"],t):t((e=e||self).FullCalendarMoment={},e.moment,e.FullCalendar)}(this,function(e,t,n){"use strict";var r=t;var a=n.createPlugin({cmdFormatter:function(e,t){var n=function e(t){var n=t.match(/^(.*?)\{(.*)\}(.*)$/);if(n){var r=e(n[2]);return{head:n[1],middle:r,tail:n[3],whole:n[1]+r.whole+n[3]}}return{head:null,middle:null,tail:null,whole:t}}(e);if(t.end){var r=l(t.start.array,t.timeZone,t.start.timeZoneOffset,t.localeCodes[0]),a=l(t.end.array,t.timeZone,t.end.timeZoneOffset,t.localeCodes[0]);return function e(t,n,r,a){if(t.middle){var o=n(t.head),l=e(t.middle,n,r,a),u=n(t.tail),i=r(t.head),d=e(t.middle,n,r,a),f=r(t.tail);if(o===i&&u===f)return o+(l===d?l:l+a+d)+u}var c=n(t.whole),m=r(t.whole);return c===m?c:c+a+m}(n,o(r),o(a),t.separator)}return l(t.date.array,t.timeZone,t.date.timeZoneOffset,t.localeCodes[0]).format(n.whole)}});function o(e){return function(t){return t?e.format(t):""}}function l(e,t,n,a){var o;return"local"===t?o=r(e):"UTC"===t?o=r.utc(e):r.tz?o=r.tz(e,t):(o=r.utc(e),null!=n&&o.utcOffset(n)),o.locale(a),o}e.default=a,e.toDuration=function(e){return r.duration(e)},e.toMoment=function(e,t){if(!(t instanceof n.Calendar))throw new Error("must supply a Calendar instance");return l(e,t.dateEnv.timeZone,null,t.dateEnv.locale.codes[0])},Object.defineProperty(e,"__esModule",{value:!0})});
\ No newline at end of file
{
"name": "@fullcalendar/moment",
"version": "4.3.0",
"title": "FullCalendar Moment Plugin",
"description": "A connector to the MomentJS date library",
"keywords": [
"calendar",
"event",
"full-sized"
],
"homepage": "https://fullcalendar.io/",
"docs": "https://fullcalendar.io/docs/moment-plugins",
"bugs": "https://fullcalendar.io/reporting-bugs",
"repository": {
"type": "git",
"url": "https://github.com/fullcalendar/fullcalendar.git",
"homepage": "https://github.com/fullcalendar/fullcalendar"
},
"license": "MIT",
"author": {
"name": "Adam Shaw",
"email": "arshaw@arshaw.com",
"url": "http://arshaw.com/"
},
"copyright": "2019 Adam Shaw",
"peerDependencies": {
"@fullcalendar/core": "~4.3.0",
"moment": "^2.24.0"
},
"main": "main.js",
"module": "main.esm.js",
"unpkg": "main.min.js",
"types": "main.d.ts"
}
For complete licensing information, visit:
http://fullcalendar.io/scheduler/license
FullCalendar Scheduler is tri-licensed, meaning you must choose
one of three licenses to use. Here is a summary of those licenses:
- Commercial License
(a paid license, meant for commercial use)
http://fullcalendar.io/scheduler/license-details
- Creative Commons Non-Commercial No-Derivatives
(meant for trial and non-commercial use)
https://creativecommons.org/licenses/by-nc-nd/4.0/
- GPLv3 License
(meant for open-source projects)
http://www.gnu.org/licenses/gpl-3.0.en.html
# FullCalendar Resources Common Plugin
Offers base support for resources. Required for all resource-related plugins.
[View the docs &raquo;](https://fullcalendar.io/docs/scheduler)
This package was created from the [FullCalendar monorepo &raquo;](https://github.com/fullcalendar/fullcalendar-scheduler)
// Generated by dts-bundle v0.7.3-fork.1
// Dependencies for this module:
// ambient.d.ts
declare module '@fullcalendar/resource-common' {
import '@fullcalendar/resource-common/ambient';
import '@fullcalendar/resource-common/api/EventApi';
import '@fullcalendar/resource-common/resource-sources/resource-array';
import '@fullcalendar/resource-common/resource-sources/resource-func';
import '@fullcalendar/resource-common/resource-sources/resource-json-feed';
const _default: import("@fullcalendar/core").PluginDef;
export default _default;
export { default as ResourceDayHeader } from '@fullcalendar/resource-common/common/ResourceDayHeader';
export { VResourceJoiner, AbstractResourceDayTable, ResourceDayTable, DayResourceTable, VResourceSplitter } from '@fullcalendar/resource-common/common/resource-day-table';
export { Resource, ResourceHash } from '@fullcalendar/resource-common/structs/resource';
export { ResourceViewProps } from '@fullcalendar/resource-common/View';
export { flattenResources, Group, isGroupsEqual, GroupNode, ResourceNode, buildRowNodes, buildResourceFields } from '@fullcalendar/resource-common/common/resource-hierarchy';
export { buildResourceTextFunc } from '@fullcalendar/resource-common/common/resource-rendering';
export { default as ResourceApi } from '@fullcalendar/resource-common/api/ResourceApi';
export { default as ResourceSplitter } from '@fullcalendar/resource-common/common/ResourceSplitter';
}
declare module '@fullcalendar/resource-common/ambient' {
import ResourceApi from '@fullcalendar/resource-common/api/ResourceApi';
import {ResourceSource, ResourceSourceInput} from '@fullcalendar/resource-common/structs/resource-source';
import {View} from '@fullcalendar/core';
import {ResourceHash} from '@fullcalendar/resource-common/structs/resource';
import {ResourceEntityExpansions} from '@fullcalendar/resource-common/reducers/resourceEntityExpansions';
import {ResourceAction} from '@fullcalendar/resource-common/reducers/resources';
module '@fullcalendar/core' {
interface Calendar {
addResource(input: ResourceSourceInput): ResourceApi;
getResourceById(id: string): ResourceApi | null;
getResources(): ResourceApi[];
getTopLevelResources(): ResourceApi[];
rerenderResources(): void;
refetchResources(): void;
}
interface Calendar {
dispatch(action: ResourceAction): any;
}
interface CalendarState {
resourceSource?: ResourceSource | null;
resourceStore?: ResourceHash;
resourceEntityExpansions?: ResourceEntityExpansions;
}
interface OptionsInput {
schedulerLicenseKey?: string;
resources?: ResourceSourceInput;
resourceLabelText?: string;
resourceOrder?: any;
filterResourcesWithEvents?: any;
resourceText?: any;
resourceGroupField?: any;
resourceGroupText?: any;
resourceAreaWidth?: any;
resourceColumns?: any;
resourcesInitiallyExpanded?: any;
slotWidth?: any;
datesAboveResources?: any;
eventResourceEditable?: boolean;
refetchResourcesOnNavigate?: boolean;
resourceRender?(arg: {
resource: ResourceApi;
el: HTMLElement;
view: View;
}): void;
}
interface DatePointApi {
resource?: ResourceApi;
}
interface DateSpanApi {
resource?: ResourceApi;
}
interface EventMutation {
resourceMutation?: {
matchResourceId: string;
setResourceId: string;
};
}
interface EventApi {
getResources: () => ResourceApi[];
setResources: (resources: (string | ResourceApi)[]) => void;
}
interface EventDef {
resourceIds: string[];
resourceEditable: boolean;
}
}
}
declare module '@fullcalendar/resource-common/api/EventApi' {
import '@fullcalendar/resource-common/ambient';
}
declare module '@fullcalendar/resource-common/resource-sources/resource-array' {
export {};
}
declare module '@fullcalendar/resource-common/resource-sources/resource-func' {
import {ResourceSourceError} from '@fullcalendar/resource-common/structs/resource-source';
import {ResourceInput} from '@fullcalendar/resource-common/structs/resource';
export type ResourceFunc = (arg: {
start: Date;
end: Date;
timeZone: string;
}, successCallback: (events: ResourceInput[]) => void, failureCallback: (errorObj: ResourceSourceError) => void) => any;
}
declare module '@fullcalendar/resource-common/resource-sources/resource-json-feed' {
export {};
}
declare module '@fullcalendar/resource-common/common/ResourceDayHeader' {
import {Component, ComponentContext, DateFormatter, DateMarker, DateProfile} from '@fullcalendar/core';
import {Resource} from '@fullcalendar/resource-common/structs/resource';
export interface ResourceDayHeaderProps {
dates: DateMarker[];
dateProfile: DateProfile;
datesRepDistinctDays: boolean;
resources: Resource[];
renderIntroHtml?: () => string;
}
export {ResourceDayHeader as default, ResourceDayHeader};
class ResourceDayHeader extends Component<ResourceDayHeaderProps> {
datesAboveResources: boolean;
resourceTextFunc: (resource: Resource) => string;
dateFormat: DateFormatter;
el: HTMLElement;
thead: HTMLElement;
constructor(context: ComponentContext, parentEl: HTMLElement);
destroy(): void;
render(props: ResourceDayHeaderProps): void;
renderResourceRow(resources: Resource[]): string;
renderDayAndResourceRows(dates: DateMarker[], resources: Resource[]): string;
renderResourceAndDayRows(resources: Resource[], dates: DateMarker[]): string;
renderResourceCell(resource: Resource, colspan: number, date?: DateMarker): string;
renderDateCell(date: DateMarker, colspan: number, resource?: Resource): string;
buildTr(cellHtmls: string[]): string;
processResourceEls(resources: Resource[]): void;
}
}
declare module '@fullcalendar/resource-common/common/resource-day-table' {
import {
DateSpan,
DayTable,
DayTableCell,
EventDef,
EventSegUiInteractionState,
Seg,
SlicedProps,
SplittableProps,
Splitter
} from '@fullcalendar/core';
import {Resource} from '@fullcalendar/resource-common/structs/resource';
export interface ResourceDayTableCell extends DayTableCell {
resource: Resource;
}
export abstract class AbstractResourceDayTable {
cells: ResourceDayTableCell[][];
rowCnt: number;
colCnt: number;
dayTable: DayTable;
resources: Resource[];
resourceIndex: ResourceIndex;
constructor(dayTable: DayTable, resources: Resource[]);
abstract computeCol(dateI: any, resourceI: any): number;
abstract computeColRanges(dateStartI: any, dateEndI: any, resourceI: any): {
firstCol: number;
lastCol: number;
isStart: boolean;
isEnd: boolean;
}[];
buildCells(): ResourceDayTableCell[][];
}
export class ResourceDayTable extends AbstractResourceDayTable {
computeCol(dateI: any, resourceI: any): any;
computeColRanges(dateStartI: any, dateEndI: any, resourceI: any): {
firstCol: any;
lastCol: any;
isStart: boolean;
isEnd: boolean;
}[];
}
export class DayResourceTable extends AbstractResourceDayTable {
computeCol(dateI: any, resourceI: any): any;
computeColRanges(dateStartI: any, dateEndI: any, resourceI: any): any[];
}
export class ResourceIndex {
indicesById: {
[resourceId: string]: number;
};
ids: string[];
length: number;
constructor(resources: Resource[]);
}
export interface VResourceProps extends SplittableProps {
resourceDayTable: AbstractResourceDayTable;
}
export class VResourceSplitter extends Splitter<VResourceProps> {
getKeyInfo(props: VResourceProps): any;
getKeysForDateSpan(dateSpan: DateSpan): string[];
getKeysForEventDef(eventDef: EventDef): string[];
}
export abstract class VResourceJoiner<SegType extends Seg> {
joinProps(propSets: {
[resourceId: string]: SlicedProps<SegType>;
}, resourceDayTable: AbstractResourceDayTable): SlicedProps<SegType>;
joinSegs(resourceDayTable: AbstractResourceDayTable, ...segGroups: SegType[][]): SegType[];
expandSegs(resourceDayTable: AbstractResourceDayTable, segs: SegType[]): any[];
joinInteractions(resourceDayTable: AbstractResourceDayTable, ...interactions: EventSegUiInteractionState[]): EventSegUiInteractionState;
abstract transformSeg(seg: SegType, resourceDayTable: AbstractResourceDayTable, resourceI: number): SegType[];
}
}
declare module '@fullcalendar/resource-common/structs/resource' {
import {AllowFunc, BusinessHoursInput, Calendar, ConstraintInput, EventStore, EventUi} from '@fullcalendar/core';
export interface ResourceInput {
id?: string;
parentId?: string;
children?: ResourceInput[];
title?: string;
businessHours?: BusinessHoursInput;
eventEditable?: boolean;
eventStartEditable?: boolean;
eventDurationEditable?: boolean;
eventConstraint?: ConstraintInput;
eventOverlap?: boolean;
eventAllow?: AllowFunc;
eventClassName?: string[] | string;
eventClassNames?: string[] | string;
eventBackgroundColor?: string;
eventBorderColor?: string;
eventTextColor?: string;
eventColor?: string;
extendedProps?: {
[extendedProp: string]: any;
};
[otherProp: string]: any;
}
export interface Resource {
id: string;
parentId: string;
title: string;
businessHours: EventStore | null;
ui: EventUi;
extendedProps: {
[extendedProp: string]: any;
};
}
export type ResourceHash = {
[resourceId: string]: Resource;
};
export function parseResource(input: ResourceInput, parentId: string, store: ResourceHash, calendar: Calendar): Resource;
export function getPublicId(id: string): string;
}
declare module '@fullcalendar/resource-common/View' {
import {
CalendarComponentProps,
DateRange,
EventDef,
EventDefHash,
EventStore,
EventUi,
EventUiHash,
View,
ViewProps,
ViewPropsTransformer,
ViewSpec
} from '@fullcalendar/core';
import {ResourceHash} from '@fullcalendar/resource-common/structs/resource';
import {ResourceEntityExpansions} from '@fullcalendar/resource-common/reducers/resourceEntityExpansions';
export interface ResourceViewProps extends ViewProps {
resourceStore: ResourceHash;
resourceEntityExpansions: ResourceEntityExpansions;
}
export class ResourceDataAdder implements ViewPropsTransformer {
filterResources: typeof filterResources;
transform(viewProps: ViewProps, viewSpec: ViewSpec, calendarProps: CalendarComponentProps, view: View): {
resourceStore: ResourceHash;
resourceEntityExpansions: ResourceEntityExpansions;
};
}
function filterResources(resourceStore: ResourceHash, doFilterResourcesWithEvents: boolean, eventStore: EventStore, activeRange: DateRange): ResourceHash;
export class ResourceEventConfigAdder implements ViewPropsTransformer {
buildResourceEventUis: typeof buildResourceEventUis;
injectResourceEventUis: typeof injectResourceEventUis;
transform(viewProps: ViewProps, viewSpec: ViewSpec, calendarProps: CalendarComponentProps): {
eventUiBases: {
[key: string]: EventUi;
};
};
}
function buildResourceEventUis(resourceStore: ResourceHash): {
[key: string]: EventUi;
};
function injectResourceEventUis(eventUiBases: EventUiHash, eventDefs: EventDefHash, resourceEventUis: EventUiHash): {
[key: string]: EventUi;
};
export function transformIsDraggable(val: boolean, eventDef: EventDef, eventUi: EventUi, view: View): boolean;
export {};
}
declare module '@fullcalendar/resource-common/common/resource-hierarchy' {
import {Resource, ResourceHash} from '@fullcalendar/resource-common/structs/resource';
import {ResourceEntityExpansions} from '@fullcalendar/resource-common/reducers/resourceEntityExpansions';
export interface Group {
value: any;
spec: any;
}
export interface GroupNode {
id: string;
isExpanded: boolean;
group: Group;
}
export interface ResourceNode {
id: string;
rowSpans: number[];
depth: number;
isExpanded: boolean;
hasChildren: boolean;
resource: Resource;
resourceFields: any;
}
export function flattenResources(resourceStore: ResourceHash, orderSpecs: any): Resource[];
export function buildRowNodes(resourceStore: ResourceHash, groupSpecs: any, orderSpecs: any, isVGrouping: boolean, expansions: ResourceEntityExpansions, expansionDefault: boolean): (GroupNode | ResourceNode)[];
export function buildResourceFields(resource: Resource): {
id: string;
parentId: string;
title: string;
businessHours: import("@fullcalendar/core").EventStore;
ui: import("@fullcalendar/core").EventUi;
extendedProps: {
[extendedProp: string]: any;
};
startEditable: boolean;
durationEditable: boolean;
constraints: import("@fullcalendar/core").Constraint[];
overlap: boolean;
allows: import("@fullcalendar/core").AllowFunc[];
backgroundColor: string;
borderColor: string;
textColor: string;
classNames: string[];
};
export function isGroupsEqual(group0: Group, group1: Group): boolean;
}
declare module '@fullcalendar/resource-common/common/resource-rendering' {
import {Resource} from '@fullcalendar/resource-common/structs/resource';
export function buildResourceTextFunc(resourceTextSetting: any, calendar: any): (resource: Resource) => any;
}
declare module '@fullcalendar/resource-common/api/ResourceApi' {
import {Calendar, EventApi} from '@fullcalendar/core';
import {Resource} from '@fullcalendar/resource-common/structs/resource';
export {ResourceApi as default, ResourceApi};
class ResourceApi {
_calendar: Calendar;
_resource: Resource;
constructor(calendar: Calendar, rawResource: Resource);
setProp(name: string, value: any): void;
remove(): void;
getParent(): ResourceApi | null;
getChildren(): ResourceApi[];
getEvents(): EventApi[];
readonly id: string;
readonly title: string;
readonly eventConstraint: any;
readonly eventOverlap: any;
readonly eventAllow: any;
readonly eventBackgroundColor: string;
readonly eventBorderColor: string;
readonly eventTextColor: string;
readonly eventClassNames: string[];
readonly extendedProps: any;
}
}
declare module '@fullcalendar/resource-common/common/ResourceSplitter' {
import {DateSpan, EventDef, SplittableProps, Splitter} from '@fullcalendar/core';
import {ResourceHash} from '@fullcalendar/resource-common/structs/resource';
export interface SplittableResourceProps extends SplittableProps {
resourceStore: ResourceHash;
}
export {ResourceSplitter as default, ResourceSplitter};
class ResourceSplitter extends Splitter<SplittableResourceProps> {
getKeyInfo(props: SplittableResourceProps): {
'': {};
};
getKeysForDateSpan(dateSpan: DateSpan): string[];
getKeysForEventDef(eventDef: EventDef): string[];
}
}
declare module '@fullcalendar/resource-common/structs/resource-source' {
import {Calendar, DateRange} from '@fullcalendar/core';
import {ResourceInput} from '@fullcalendar/resource-common/structs/resource';
import {ResourceFunc} from '@fullcalendar/resource-common/resource-sources/resource-func';
export type ResourceSourceError = {
message: string;
xhr?: XMLHttpRequest;
[otherProp: string]: any;
};
export type ResourceFetcher = (arg: {
resourceSource: ResourceSource;
calendar: Calendar;
range: DateRange | null;
}, success: (res: {
rawResources: ResourceInput[];
xhr?: XMLHttpRequest;
}) => void, failure: (error: ResourceSourceError) => void) => void;
export interface ExtendedResourceSourceInput {
id?: string;
resources?: ResourceInput[];
url?: string;
method?: string;
extraParams?: object | (() => object);
}
export type ResourceSourceInput = ResourceInput[] | ExtendedResourceSourceInput | ResourceFunc | string;
export interface ResourceSource {
_raw: any;
sourceId: string;
sourceDefId: number;
meta: any;
publicId: string;
isFetching: boolean;
latestFetchId: string;
fetchRange: DateRange | null;
}
export interface ResourceSourceDef {
ignoreRange?: boolean;
parseMeta: (raw: ResourceSourceInput) => object | null;
fetch: ResourceFetcher;
}
export function registerResourceSourceDef(def: ResourceSourceDef): void;
export function getResourceSourceDef(id: number): ResourceSourceDef;
export function doesSourceIgnoreRange(source: ResourceSource): boolean;
export function parseResourceSource(input: ResourceSourceInput): ResourceSource;
}
declare module '@fullcalendar/resource-common/reducers/resourceEntityExpansions' {
import {ResourceAction} from '@fullcalendar/resource-common/reducers/resources';
export type ResourceEntityExpansions = {
[id: string]: boolean;
};
export function reduceResourceEntityExpansions(expansions: ResourceEntityExpansions, action: ResourceAction): ResourceEntityExpansions;
}
declare module '@fullcalendar/resource-common/reducers/resources' {
import {Action, Calendar, CalendarState, DateRange} from '@fullcalendar/core';
import {ResourceSourceError} from '@fullcalendar/resource-common/structs/resource-source';
import {ResourceHash, ResourceInput} from '@fullcalendar/resource-common/structs/resource';
export type ResourceAction = Action | {
type: 'FETCH_RESOURCE';
} | {
type: 'RECEIVE_RESOURCES';
rawResources: ResourceInput[];
fetchId: string;
fetchRange: DateRange | null;
} | {
type: 'RECEIVE_RESOURCE_ERROR';
error: ResourceSourceError;
fetchId: string;
fetchRange: DateRange | null;
} | {
type: 'ADD_RESOURCE';
resourceHash: ResourceHash;
} | // use a hash because needs to accept children
{
type: 'REMOVE_RESOURCE';
resourceId: string;
} | {
type: 'SET_RESOURCE_PROP';
resourceId: string;
propName: string;
propValue: any;
} | {
type: 'SET_RESOURCE_ENTITY_EXPANDED';
id: string;
isExpanded: boolean;
} | {
type: 'RESET_RESOURCES';
} | {
type: 'RESET_RESOURCE_SOURCE';
resourceSourceInput: any;
} | {
type: 'REFETCH_RESOURCES';
};
export default function (state: CalendarState, action: ResourceAction, calendar: Calendar): {
resourceSource: import("@fullcalendar/resource-common/structs/resource-source").ResourceSource;
resourceStore: ResourceHash;
resourceEntityExpansions: import("@fullcalendar/resource-common/reducers/resourceEntityExpansions").ResourceEntityExpansions;
eventSources: import("@fullcalendar/core").EventSourceHash;
eventSourceLoadingLevel: number;
loadingLevel: number;
viewType: string;
currentDate: Date;
dateProfile: import("@fullcalendar/core").DateProfile;
eventStore: import("@fullcalendar/core").EventStore;
dateSelection: import("@fullcalendar/core").DateSpan;
eventSelection: string;
eventDrag: import("@fullcalendar/core").EventInteractionState;
eventResize: import("@fullcalendar/core").EventInteractionState;
};
}