react-calendar
Version:
Ultimate calendar for your React app.
50 lines (49 loc) • 2.92 kB
JavaScript
;
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(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);
};
var __rest = (this && this.__rest) || function (s, e) {
var t = {};
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function")
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
t[p[i]] = s[p[i]];
}
return t;
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var react_1 = __importDefault(require("react"));
var prop_types_1 = __importDefault(require("prop-types"));
var Flex_1 = __importDefault(require("./Flex"));
var utils_1 = require("./shared/utils");
var propTypes_1 = require("./shared/propTypes");
function TileGroup(_a) {
var className = _a.className, _b = _a.count, count = _b === void 0 ? 3 : _b, dateTransform = _a.dateTransform, dateType = _a.dateType, end = _a.end, hover = _a.hover, offset = _a.offset, start = _a.start, _c = _a.step, step = _c === void 0 ? 1 : _c, Tile = _a.tile, value = _a.value, valueType = _a.valueType, tileProps = __rest(_a, ["className", "count", "dateTransform", "dateType", "end", "hover", "offset", "start", "step", "tile", "value", "valueType"]);
var tiles = [];
for (var point = start; point <= end; point += step) {
var date = dateTransform(point);
tiles.push(react_1.default.createElement(Tile, __assign({ key: date.getTime(), classes: (0, utils_1.getTileClasses)({
value: value,
valueType: valueType,
date: date,
dateType: dateType,
hover: hover,
}), date: date, point: point }, tileProps)));
}
return (react_1.default.createElement(Flex_1.default, { className: className, count: count, offset: offset, wrap: true }, tiles));
}
exports.default = TileGroup;
TileGroup.propTypes = __assign(__assign({}, propTypes_1.tileGroupProps), { className: prop_types_1.default.string, count: prop_types_1.default.number, dateTransform: prop_types_1.default.func.isRequired, dateType: prop_types_1.default.string, end: prop_types_1.default.number.isRequired, offset: prop_types_1.default.number, step: prop_types_1.default.number, start: prop_types_1.default.number.isRequired, tile: prop_types_1.default.func.isRequired });