@collectionspace/cspace-public-browser
Version:
CollectionSpace public browser
44 lines (43 loc) • 1.77 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = InstitutionSection;
var _react = _interopRequireDefault(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _immutable = _interopRequireDefault(require("immutable"));
var _InstitutionHoldingListContainer = _interopRequireDefault(require("./InstitutionHoldingListContainer"));
var _InstitutionSection = _interopRequireDefault(require("../../../styles/cspace/InstitutionSection.css"));
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
const propTypes = {
config: _propTypes.default.objectOf(_propTypes.default.object).isRequired,
holdingInstitutions: _propTypes.default.instanceOf(_immutable.default.Set).isRequired,
referenceValue: _propTypes.default.string.isRequired,
selectedInstitutionId: _propTypes.default.string
};
const defaultProps = {
selectedInstitutionId: undefined
};
function InstitutionSection(props) {
const {
config,
holdingInstitutions,
referenceValue,
selectedInstitutionId
} = props;
if (!holdingInstitutions || holdingInstitutions.size === 0) {
return null;
}
const institutions = holdingInstitutions.map(institutionId => /*#__PURE__*/_react.default.createElement(_InstitutionHoldingListContainer.default, {
institutionConfig: config[institutionId],
institutionId: institutionId,
isSelected: institutionId === selectedInstitutionId,
key: institutionId,
referenceValue: referenceValue
}));
return /*#__PURE__*/_react.default.createElement("section", {
className: _InstitutionSection.default.common
}, institutions);
}
InstitutionSection.propTypes = propTypes;
InstitutionSection.defaultProps = defaultProps;