UNPKG

@collectionspace/cspace-public-browser

Version:
42 lines (41 loc) 1.58 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = ClearSearchParamsLink; var _react = _interopRequireDefault(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); var _reactIntl = require("react-intl"); var _reactRouterDom = require("react-router-dom"); var _immutable = _interopRequireDefault(require("immutable")); var _ids = require("../../../constants/ids"); var _urlHelpers = require("../../../helpers/urlHelpers"); var _SearchParamLink = _interopRequireDefault(require("../../../../styles/cspace/SearchParamLink.css")); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } const propTypes = { params: _propTypes.default.instanceOf(_immutable.default.Map).isRequired }; const messages = (0, _reactIntl.defineMessages)({ label: { "id": "clearSearchParamsLink.label", "defaultMessage": "Clear all" } }); function ClearSearchParamsLink(props) { const { params } = props; const sortParam = params.filter((value, key) => key === _ids.SORT_ID); const hasNonSortParam = params.size > sortParam.size; if (hasNonSortParam) { const queryString = (0, _urlHelpers.searchParamsToQueryString)(sortParam); return /*#__PURE__*/_react.default.createElement(_reactRouterDom.Link, { className: _SearchParamLink.default.common, to: { search: `?${queryString}` } }, /*#__PURE__*/_react.default.createElement(_reactIntl.FormattedMessage, messages.label)); } return null; } ClearSearchParamsLink.propTypes = propTypes;