react-cm-ui
Version:
React UI for Healthy Church
608 lines (564 loc) • 27.3 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
var _classnames = _interopRequireDefault(require("classnames"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _react = _interopRequireDefault(require("react"));
var _personPanelConstants = require("../personPanel/personPanelConstants");
var _constants = require("../../global/constants");
var _constants2 = require("./constants");
var _utils = require("./utils");
var _grid = _interopRequireDefault(require("../../layout/grid"));
var _makeStyles = _interopRequireDefault(require("../../styles/makeStyles"));
var _milestonePopoverContent = _interopRequireDefault(require("./milestonePopoverContent"));
var _popover = _interopRequireDefault(require("../popover"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter); }
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
var propTypes = {
attendedClass101Date: _constants2.ATTENDED_CLASS101_DATE_PROP_TYPE,
attendedClass201Date: _constants2.ATTENDED_CLASS201_DATE_PROP_TYPE,
attendedClass301Date: _constants2.ATTENDED_CLASS301_DATE_PROP_TYPE,
attendedClass401Date: _constants2.ATTENDED_CLASS401_DATE_PROP_TYPE,
classes: _propTypes["default"].shape({
root: _propTypes["default"].string
}),
disablePopover: _constants2.DISABLE_POPOVER_PROP_TYPE,
hasSignedMaturityCovenant: _constants2.HAS_SIGNED_MATURITY_COVENANT_PROP_TYPE,
hasSignedMembershipAgreement: _constants2.HAS_SIGNED_MEMBERSHIP_AGREEMENT_PROP_TYPE,
hasSignedMinistryCovenant: _constants2.HAS_SIGNED_MINISTRY_COVENANT_PROP_TYPE,
hasSignedMissionCovenant: _constants2.HAS_SIGNED_MISSION_COVENANT_PROP_TYPE,
hasTakenClass101: _constants2.HAS_TAKEN_CLASS101_PROP_TYPE,
hasTakenClass201: _constants2.HAS_TAKEN_CLASS201_PROP_TYPE,
hasTakenClass301: _constants2.HAS_TAKEN_CLASS301_PROP_TYPE,
hasTakenClass401: _constants2.HAS_TAKEN_CLASS401_PROP_TYPE,
iconColor: _constants2.ICON_COLOR_PROP_TYPE,
/* eslint-disable react/no-unused-prop-types */
iconSize: _constants2.ICON_SIZE_PROP_TYPE,
inverse: _constants2.INVERSE_PROP_TYPE,
/* eslint-enable react/no-unused-prop-types */
isAdult: _propTypes["default"].bool.isRequired,
isFemale: _propTypes["default"].bool,
isMale: _propTypes["default"].bool,
recordType: _personPanelConstants.RECORD_TYPE_PROP_TYPE,
removeClassColumn: _constants2.REMOVE_CLASS_COLUMN_PROP_TYPE,
signedMaturityCovenantDate: _constants2.SIGNED_MATURITY_COVENANT_DATE_PROP_TYPE,
signedMinistryCovenantDate: _constants2.SIGNED_MINISTRY_COVENANT_DATE_PROP_TYPE,
signedMissionCovenantDate: _constants2.SIGNED_MISSION_COVENANT_DATE_PROP_TYPE
};
var defaultProps = {
attendedClass101Date: null,
attendedClass201Date: null,
attendedClass301Date: null,
attendedClass401Date: null,
classes: null,
disablePopover: _constants2.DISABLE_POPOVER_DEFAULT_PROP,
hasSignedMaturityCovenant: null,
hasSignedMembershipAgreement: null,
hasSignedMinistryCovenant: null,
hasSignedMissionCovenant: null,
hasTakenClass101: null,
hasTakenClass201: null,
hasTakenClass301: null,
hasTakenClass401: null,
iconColor: _constants2.ICON_COLOR_DEFAULT_PROP,
iconSize: _constants2.ICON_SIZE_DEFAULT_PROP,
inverse: _constants2.INVERSE_DEFAULT_PROP,
isFemale: null,
isMale: null,
recordType: _personPanelConstants.RECORD_TYPE_DEFAULT_PROP,
removeClassColumn: _constants2.REMOVE_CLASS_COLUMN_DEFAULT_PROP,
signedMaturityCovenantDate: null,
signedMinistryCovenantDate: null,
signedMissionCovenantDate: null
};
var useStyles = (0, _makeStyles["default"])(function (theme) {
var palette = theme.palette,
borderRadius = theme.shape.borderRadius;
var hasTakenStyles = function hasTakenStyles(boxShadowColor) {
return {
backgroundColor: 'transparent',
boxShadow: "inset 0 0 0 2px ".concat(boxShadowColor)
};
};
var hasSignedStyles = function hasSignedStyles(backgroundColor) {
return {
backgroundColor: backgroundColor,
boxShadow: 'none'
};
};
/**
* This is the base icon size for the
* C.L.A.S.S. icon (which isn't an SVG), so that the
* size can be scaled proportionally based on the given `size` from props.
*/
var basesClassIconSize = 24;
return {
root: {},
iconBase: {
height: '10.42px',
position: 'absolute',
width: '11.07px',
backgroundColor: function backgroundColor(_ref) {
var iconColor = _ref.iconColor;
return "".concat(iconColor || palette["static"].main);
},
opacity: function opacity(_ref2) {
var iconColor = _ref2.iconColor;
return iconColor && 0.25;
}
},
iconBaseClass101: {
borderRadius: "0 ".concat(borderRadius, "px 0 0"),
right: 0
},
iconBaseColorClass101: {
'&$hasSignedMembershipAgreement': {
'&$isAdult': {
'&$genderFemale': _objectSpread({}, hasSignedStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
gender: 'f',
recordType: 'adult',
theme: theme
})))),
'&$genderMale': _objectSpread({}, hasSignedStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
gender: 'm',
recordType: 'adult',
theme: theme
})))),
'&$genderUndefined': _objectSpread({}, hasSignedStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
recordType: 'adult',
theme: theme
}))))
},
'&$isChild': _objectSpread({}, hasSignedStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
recordType: 'child',
theme: theme
})))),
'&$isStudent': _objectSpread({}, hasSignedStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
recordType: 'student',
theme: theme
}))))
},
'&$hasTakenClass101': {
'&$isAdult': {
'&$genderFemale': _objectSpread({}, hasTakenStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
gender: 'f',
recordType: 'adult',
theme: theme
})))),
'&$genderMale': _objectSpread({}, hasTakenStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
gender: 'm',
recordType: 'adult',
theme: theme
})))),
'&$genderUndefined': _objectSpread({}, hasTakenStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
recordType: 'adult',
theme: theme
}))))
},
'&$isChild': _objectSpread({}, hasTakenStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
recordType: 'child',
theme: theme
})))),
'&$isStudent': _objectSpread({}, hasTakenStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
recordType: 'student',
theme: theme
}))))
}
},
iconBaseClass201: {
borderRadius: "".concat(borderRadius, "px 0 0"),
top: 0
},
iconBaseColorClass201: {
'&$hasSignedMaturityCovenant': {
'&$isAdult': {
'&$genderFemale': _objectSpread({}, hasSignedStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
gender: 'f',
recordType: 'adult',
theme: theme
})))),
'&$genderMale': _objectSpread({}, hasSignedStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
gender: 'm',
recordType: 'adult',
theme: theme
})))),
'&$genderUndefined': _objectSpread({}, hasSignedStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
recordType: 'adult',
theme: theme
}))))
},
'&$isChild': _objectSpread({}, hasSignedStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
recordType: 'child',
theme: theme
})))),
'&$isStudent': _objectSpread({}, hasSignedStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
recordType: 'student',
theme: theme
}))))
},
'&$hasTakenClass201': {
'&$isAdult': {
'&$genderFemale': _objectSpread({}, hasTakenStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
gender: 'f',
recordType: 'adult',
theme: theme
})))),
'&$genderMale': _objectSpread({}, hasTakenStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
gender: 'm',
recordType: 'adult',
theme: theme
})))),
'&$genderUndefined': _objectSpread({}, hasTakenStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
recordType: 'adult',
theme: theme
}))))
},
'&$isChild': _objectSpread({}, hasTakenStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
recordType: 'child',
theme: theme
})))),
'&$isStudent': _objectSpread({}, hasTakenStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
recordType: 'student',
theme: theme
}))))
}
},
iconBaseClass301: {
borderRadius: "0 0 0 ".concat(borderRadius, "px"),
bottom: 0
},
iconBaseColorClass301: {
'&$hasSignedMinistryCovenant': {
'&$isAdult': {
'&$genderFemale': _objectSpread({}, hasSignedStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
gender: 'f',
recordType: 'adult',
theme: theme
})))),
'&$genderMale': _objectSpread({}, hasSignedStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
gender: 'm',
recordType: 'adult',
theme: theme
})))),
'&$genderUndefined': _objectSpread({}, hasSignedStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
recordType: 'adult',
theme: theme
}))))
},
'&$isChild': _objectSpread({}, hasSignedStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
recordType: 'child',
theme: theme
})))),
'&$isStudent': _objectSpread({}, hasSignedStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
recordType: 'student',
theme: theme
}))))
},
'&$hasTakenClass301': {
'&$isAdult': {
'&$genderFemale': _objectSpread({}, hasTakenStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
gender: 'f',
recordType: 'adult',
theme: theme
})))),
'&$genderMale': _objectSpread({}, hasTakenStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
gender: 'm',
recordType: 'adult',
theme: theme
})))),
'&$genderUndefined': _objectSpread({}, hasTakenStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
recordType: 'adult',
theme: theme
}))))
},
'&$isChild': _objectSpread({}, hasTakenStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
recordType: 'child',
theme: theme
})))),
'&$isStudent': _objectSpread({}, hasTakenStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
recordType: 'student',
theme: theme
}))))
}
},
iconBaseClass401: {
borderRadius: "0 0 ".concat(borderRadius, "px"),
bottom: 0,
right: 0
},
iconBaseColorClass401: {
'&$hasSignedMissionCovenant': {
'&$isAdult': {
'&$genderFemale': _objectSpread({}, hasSignedStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
gender: 'f',
recordType: 'adult',
theme: theme
})))),
'&$genderMale': _objectSpread({}, hasSignedStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
gender: 'm',
recordType: 'adult',
theme: theme
})))),
'&$genderUndefined': _objectSpread({}, hasSignedStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
recordType: 'adult',
theme: theme
}))))
},
'&$isChild': _objectSpread({}, hasSignedStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
recordType: 'child',
theme: theme
})))),
'&$isStudent': _objectSpread({}, hasSignedStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
recordType: 'student',
theme: theme
}))))
},
'&$hasTakenClass401': {
'&$isAdult': {
'&$genderFemale': _objectSpread({}, hasTakenStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
gender: 'f',
recordType: 'adult',
theme: theme
})))),
'&$genderMale': _objectSpread({}, hasTakenStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
gender: 'm',
recordType: 'adult',
theme: theme
})))),
'&$genderUndefined': _objectSpread({}, hasTakenStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
recordType: 'adult',
theme: theme
}))))
},
'&$isChild': _objectSpread({}, hasTakenStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
recordType: 'child',
theme: theme
})))),
'&$isStudent': _objectSpread({}, hasTakenStyles("".concat((0, _personPanelConstants.RECORD_TYPE_COLOR)({
recordType: 'student',
theme: theme
}))))
}
},
iconClassContainer: {
height: basesClassIconSize,
position: 'relative',
transform: function transform(props) {
var iconSize = (0, _utils.getIconSize)({
isMobile: props.isMobile,
iconSize: props.iconSize
});
return "scale(".concat(props.isMobile || iconSize === 16 ? 16 / basesClassIconSize : 1, ")");
},
transformOrigin: "0 ".concat(borderRadius, "px"),
width: basesClassIconSize
},
iconClassInnerContainer: {
height: basesClassIconSize,
transform: 'rotate(45deg) scale(0.707106)',
width: basesClassIconSize
},
hasTakenClass101: function hasTakenClass101(_ref3) {
var iconColor = _ref3.iconColor;
return {
backgroundColor: 'transparent !important',
boxShadow: "inset 0 0 0 2px ".concat(iconColor, " !important"),
opacity: '1 !important'
};
},
hasSignedMembershipAgreement: {
opacity: '1 !important'
},
hasTakenClass201: function hasTakenClass201(_ref4) {
var iconColor = _ref4.iconColor;
return {
backgroundColor: 'transparent !important',
boxShadow: "inset 0 0 0 2px ".concat(iconColor, " !important"),
opacity: '1 !important'
};
},
hasSignedMaturityCovenant: {
opacity: '1 !important'
},
hasTakenClass301: function hasTakenClass301(_ref5) {
var iconColor = _ref5.iconColor;
return {
backgroundColor: 'transparent !important',
boxShadow: "inset 0 0 0 2px ".concat(iconColor, " !important"),
opacity: '1 !important'
};
},
hasSignedMinistryCovenant: {
opacity: '1 !important'
},
hasTakenClass401: function hasTakenClass401(_ref6) {
var iconColor = _ref6.iconColor;
return {
backgroundColor: 'transparent !important',
boxShadow: "inset 0 0 0 2px ".concat(iconColor, " !important"),
opacity: '1 !important'
};
},
hasSignedMissionCovenant: {
opacity: '1 !important'
},
genderFemale: {},
genderMale: {},
genderUndefined: {},
isBaptised: {},
isAdult: {},
isChild: {},
isStudent: {}
};
});
function GridColumnClassBaseballDiamond(props) {
var _ClassNames, _ClassNames2, _ClassNames3, _ClassNames4;
var attendedClass101Date = props.attendedClass101Date,
attendedClass201Date = props.attendedClass201Date,
attendedClass301Date = props.attendedClass301Date,
attendedClass401Date = props.attendedClass401Date,
congregationDate = props.congregationDate,
disablePopover = props.disablePopover,
hasSignedMaturityCovenant = props.hasSignedMaturityCovenant,
hasSignedMembershipAgreement = props.hasSignedMembershipAgreement,
hasSignedMinistryCovenant = props.hasSignedMinistryCovenant,
hasSignedMissionCovenant = props.hasSignedMissionCovenant,
hasTakenClass101 = props.hasTakenClass101,
hasTakenClass201 = props.hasTakenClass201,
hasTakenClass301 = props.hasTakenClass301,
hasTakenClass401 = props.hasTakenClass401,
iconColor = props.iconColor,
isAdult = props.isAdult,
isFemale = props.isFemale,
isMale = props.isMale,
recordType = props.recordType,
removeClassColumn = props.removeClassColumn,
signedMaturityCovenantDate = props.signedMaturityCovenantDate,
signedMinistryCovenantDate = props.signedMinistryCovenantDate,
signedMissionCovenantDate = props.signedMissionCovenantDate;
var classes = useStyles(props);
if (removeClassColumn) {
return null;
}
var iconBaseClass101Classes = (0, _classnames["default"])(classes.iconBaseClass101, classes.iconBase, (_ClassNames = {}, _defineProperty(_ClassNames, classes.iconBaseColorClass101, !iconColor), _defineProperty(_ClassNames, classes.genderFemale, isFemale), _defineProperty(_ClassNames, classes.genderMale, isMale), _defineProperty(_ClassNames, classes.genderUndefined, !isFemale && !isMale), _defineProperty(_ClassNames, classes.hasSignedMembershipAgreement, hasSignedMembershipAgreement), _defineProperty(_ClassNames, classes.hasTakenClass101, hasTakenClass101 && !hasSignedMembershipAgreement), _defineProperty(_ClassNames, classes.isAdult, recordType === 'adult'), _defineProperty(_ClassNames, classes.isChild, recordType === 'child'), _defineProperty(_ClassNames, classes.isStudent, recordType === 'student'), _ClassNames));
var iconBaseClass201Classes = (0, _classnames["default"])(classes.iconBaseClass201, classes.iconBase, (_ClassNames2 = {}, _defineProperty(_ClassNames2, classes.iconBaseColorClass201, !iconColor), _defineProperty(_ClassNames2, classes.genderFemale, isFemale), _defineProperty(_ClassNames2, classes.genderMale, isMale), _defineProperty(_ClassNames2, classes.genderUndefined, !isFemale && !isMale), _defineProperty(_ClassNames2, classes.hasSignedMaturityCovenant, hasSignedMaturityCovenant), _defineProperty(_ClassNames2, classes.hasTakenClass201, hasTakenClass201 && !hasSignedMaturityCovenant), _defineProperty(_ClassNames2, classes.isAdult, recordType === 'adult'), _defineProperty(_ClassNames2, classes.isChild, recordType === 'child'), _defineProperty(_ClassNames2, classes.isStudent, recordType === 'student'), _ClassNames2));
var iconBaseClass301Classes = (0, _classnames["default"])(classes.iconBaseClass301, classes.iconBase, (_ClassNames3 = {}, _defineProperty(_ClassNames3, classes.iconBaseColorClass301, !iconColor), _defineProperty(_ClassNames3, classes.genderFemale, isFemale), _defineProperty(_ClassNames3, classes.genderMale, isMale), _defineProperty(_ClassNames3, classes.genderUndefined, !isFemale && !isMale), _defineProperty(_ClassNames3, classes.hasSignedMinistryCovenant, hasSignedMinistryCovenant), _defineProperty(_ClassNames3, classes.hasTakenClass301, hasTakenClass301 && !hasSignedMinistryCovenant), _defineProperty(_ClassNames3, classes.isAdult, recordType === 'adult'), _defineProperty(_ClassNames3, classes.isChild, recordType === 'child'), _defineProperty(_ClassNames3, classes.isStudent, recordType === 'student'), _ClassNames3));
var iconBaseClass401Classes = (0, _classnames["default"])(classes.iconBaseClass401, classes.iconBase, (_ClassNames4 = {}, _defineProperty(_ClassNames4, classes.iconBaseColorClass401, !iconColor), _defineProperty(_ClassNames4, classes.genderFemale, isFemale), _defineProperty(_ClassNames4, classes.genderMale, isMale), _defineProperty(_ClassNames4, classes.genderUndefined, !isFemale && !isMale), _defineProperty(_ClassNames4, classes.hasSignedMissionCovenant, hasSignedMissionCovenant), _defineProperty(_ClassNames4, classes.hasTakenClass401, hasTakenClass401 && !hasSignedMissionCovenant), _defineProperty(_ClassNames4, classes.isAdult, recordType === 'adult'), _defineProperty(_ClassNames4, classes.isChild, recordType === 'child'), _defineProperty(_ClassNames4, classes.isStudent, recordType === 'student'), _ClassNames4));
var milestonesClassesDates = [].concat(_toConsumableArray(attendedClass101Date ? [{
label: '101',
date: attendedClass101Date
}] : []), _toConsumableArray(congregationDate ? [{
label: 'Became Member',
date: congregationDate
}] : []), _toConsumableArray(attendedClass201Date ? [{
label: '201',
date: attendedClass201Date
}] : []), _toConsumableArray(signedMaturityCovenantDate ? [{
label: 'Maturity Covenant Card',
date: signedMaturityCovenantDate
}] : []), _toConsumableArray(attendedClass301Date ? [{
label: '301',
date: attendedClass301Date
}] : []), _toConsumableArray(signedMinistryCovenantDate ? [{
label: 'Ministry Covenant',
date: signedMinistryCovenantDate
}] : []), _toConsumableArray(attendedClass401Date ? [{
label: '401',
date: attendedClass401Date
}] : []), _toConsumableArray(signedMissionCovenantDate ? [{
label: 'Mission Commitment',
date: signedMissionCovenantDate
}] : []));
var class101Title;
var class201Title;
var class301Title;
var class401Title;
if (!hasTakenClass101) {
class101Title = 'Has not taken CLASS 101';
}
if (!hasSignedMembershipAgreement) {
if (class101Title) {
class101Title += ' and has not Signed Membership Covenant';
} else {
class101Title = 'Has not Signed Membership Covenant';
}
}
if (!hasTakenClass201) {
class201Title = 'Has not taken CLASS 201';
}
if (!hasSignedMaturityCovenant) {
if (class201Title) {
class201Title += ' and has not Signed Maturity Covenant';
} else {
class201Title = 'Has not Signed Maturity Covenant';
}
}
if (!hasTakenClass301) {
class301Title = 'Has not taken CLASS 301';
}
if (!hasSignedMinistryCovenant) {
if (class301Title) {
class301Title += ' and has not Signed Ministry Covenant';
} else {
class301Title = 'Has not Signed Ministry Covenant';
}
}
if (!hasTakenClass401) {
class401Title = 'Has not taken CLASS 401';
}
if (!hasSignedMissionCovenant) {
if (class401Title) {
class401Title += ' and has not Signed Mission Covenant';
} else {
class401Title = 'Has not Signed Mission Covenant';
}
}
var baseClassIcon = /*#__PURE__*/_react["default"].createElement("div", {
className: classes.iconClassContainer,
role: "presentation",
style: {
outline: 'none',
cursor: 'pointer'
} // eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex
,
tabIndex: 0
}, /*#__PURE__*/_react["default"].createElement("div", {
className: classes.iconClassInnerContainer
}, /*#__PURE__*/_react["default"].createElement("div", {
className: (0, _classnames["default"])("".concat(_constants.BEM_PERSON_CORE_MILESTONES, "--icon_base_class_101"), iconBaseClass101Classes),
title: class101Title
}), /*#__PURE__*/_react["default"].createElement("div", {
className: (0, _classnames["default"])("".concat(_constants.BEM_PERSON_CORE_MILESTONES, "--icon_base_class_201"), iconBaseClass201Classes),
title: class201Title
}), /*#__PURE__*/_react["default"].createElement("div", {
className: (0, _classnames["default"])("".concat(_constants.BEM_PERSON_CORE_MILESTONES, "--icon_base_class_301"), iconBaseClass301Classes),
title: class301Title
}), /*#__PURE__*/_react["default"].createElement("div", {
className: (0, _classnames["default"])("".concat(_constants.BEM_PERSON_CORE_MILESTONES, "--icon_base_class_401"), iconBaseClass401Classes),
title: class401Title
})));
var popoverNode = !disablePopover && isAdult && milestonesClassesDates.length > 0 ? /*#__PURE__*/_react["default"].createElement(_popover["default"], {
content: /*#__PURE__*/_react["default"].createElement(_milestonePopoverContent["default"], {
title: "C.L.A.S.S.",
milestonesDates: milestonesClassesDates
}),
mouseEvent: "onMouseEnter"
}, baseClassIcon) : null;
return /*#__PURE__*/_react["default"].createElement(_grid["default"].Column, {
className: (0, _classnames["default"])("".concat(_constants.BEM_PERSON_CORE_MILESTONES, "--class_column"), classes.root)
}, popoverNode || baseClassIcon);
}
GridColumnClassBaseballDiamond.propTypes = propTypes;
GridColumnClassBaseballDiamond.defaultProps = defaultProps;
var _default = GridColumnClassBaseballDiamond;
exports["default"] = _default;