cspace-ui
Version:
CollectionSpace user interface for browsers
55 lines (53 loc) • 1.65 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = _interopRequireDefault(require("react"));
var _reactIntl = require("react-intl");
var _reactRouterDom = require("react-router-dom/cjs/react-router-dom.min");
var _propTypes = _interopRequireDefault(require("prop-types"));
var _BlobImage = _interopRequireDefault(require("../media/BlobImage"));
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
const messages = (0, _reactIntl.defineMessages)({
alt: {
"id": "searchResultImage.altText",
"defaultMessage": "Edit record {csid}"
}
});
/**
* A wrapper around BlobImage which has navigation on click if available and alt text
*/
function SearchResultImage({
derivative,
intl,
item,
location,
state
}) {
const itemCsid = item.get('csid');
const blobCsid = item.get('blobCsid');
const blobAlt = item.get('blobAltText');
const altText = blobAlt || intl.formatMessage(messages.alt, {
csid: itemCsid
});
const blob = /*#__PURE__*/_react.default.createElement(_BlobImage.default, {
csid: blobCsid,
derivative: derivative,
alt: altText
});
return location && state ? /*#__PURE__*/_react.default.createElement(_reactRouterDom.Link, {
to: {
pathname: location,
state
}
}, blob) : blob;
}
SearchResultImage.propTypes = {
derivative: _propTypes.default.string,
intl: _reactIntl.intlShape,
item: _propTypes.default.object,
location: _propTypes.default.string,
state: _propTypes.default.object
};
var _default = exports.default = (0, _reactIntl.injectIntl)(SearchResultImage);