UNPKG

react-cm-ui

Version:
608 lines (564 loc) 27.3 kB
"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;