UNPKG

react-big-calendar

Version:
78 lines (76 loc) 3.6 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); var _clsx = _interopRequireDefault(require("clsx")); var _react = _interopRequireDefault(require("react")); function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } function stringifyPercent(v) { return typeof v === 'string' ? v : v + '%'; } /* eslint-disable react/prop-types */ function TimeGridEvent(props) { var style = props.style, className = props.className, event = props.event, accessors = props.accessors, rtl = props.rtl, selected = props.selected, label = props.label, continuesPrior = props.continuesPrior, continuesAfter = props.continuesAfter, getters = props.getters, onClick = props.onClick, onDoubleClick = props.onDoubleClick, isBackgroundEvent = props.isBackgroundEvent, onKeyPress = props.onKeyPress, _props$components = props.components, Event = _props$components.event, EventWrapper = _props$components.eventWrapper; var title = accessors.title(event); var tooltip = accessors.tooltip(event); var end = accessors.end(event); var start = accessors.start(event); var userProps = getters.eventProp(event, start, end, selected); var inner = [/*#__PURE__*/_react.default.createElement("div", { key: "1", className: "rbc-event-label" }, label), /*#__PURE__*/_react.default.createElement("div", { key: "2", className: "rbc-event-content" }, Event ? /*#__PURE__*/_react.default.createElement(Event, { event: event, title: title }) : title)]; var height = style.height, top = style.top, width = style.width, xOffset = style.xOffset; var eventStyle = _objectSpread(_objectSpread({}, userProps.style), {}, (0, _defineProperty2.default)({ top: stringifyPercent(top), height: stringifyPercent(height), width: stringifyPercent(width) }, rtl ? 'right' : 'left', stringifyPercent(xOffset))); return /*#__PURE__*/_react.default.createElement(EventWrapper, (0, _extends2.default)({ type: "time" }, props), /*#__PURE__*/_react.default.createElement("div", { role: "button", tabIndex: 0, onClick: onClick, onDoubleClick: onDoubleClick, style: eventStyle, onKeyDown: onKeyPress, title: tooltip ? (typeof label === 'string' ? label + ': ' : '') + tooltip : undefined, className: (0, _clsx.default)(isBackgroundEvent ? 'rbc-background-event' : 'rbc-event', className, userProps.className, { 'rbc-selected': selected, 'rbc-event-continues-earlier': continuesPrior, 'rbc-event-continues-later': continuesAfter }) }, inner)); } var _default = exports.default = TimeGridEvent;