@atlaskit/global-search
Version:
A cross-product search component (batteries included)
48 lines (45 loc) • 1.87 kB
JavaScript
import _defineProperty from "@babel/runtime/helpers/defineProperty";
import React from 'react';
import { ResultItemGroup } from '@atlaskit/quick-search';
import Button from '@atlaskit/button/custom-theme-button';
import { messages } from '../../messages';
import { FormattedMessage } from 'react-intl';
import ConfluenceSpaceFilter from './SpaceFilter';
import styled from 'styled-components';
import { fireMoreFiltersButtonClickEvent } from '../../util/analytics-event-helper';
import { withAnalyticsEvents } from '@atlaskit/analytics-next';
const Container = styled.span`
display: inline-flex;
align-items: center;
max-width: 100%;
`;
const ButtonContainer = styled.div`
flex-shrink: 0;
`;
const FilterContainer = styled.div`
flex-shrink: 1;
overflow: hidden;
`;
export class ConfluenceFilterGroup extends React.Component {
constructor(...args) {
super(...args);
_defineProperty(this, "onMoreFiltersClick", event => {
const {
onAdvancedSearch,
createAnalyticsEvent,
searchSessionId
} = this.props;
fireMoreFiltersButtonClickEvent(searchSessionId, createAnalyticsEvent);
onAdvancedSearch(event);
});
}
render() {
return /*#__PURE__*/React.createElement(ResultItemGroup, {
title: /*#__PURE__*/React.createElement(FormattedMessage, messages.confluence_space_filter)
}, /*#__PURE__*/React.createElement(Container, null, /*#__PURE__*/React.createElement(FilterContainer, null, /*#__PURE__*/React.createElement(ConfluenceSpaceFilter, this.props)), /*#__PURE__*/React.createElement(ButtonContainer, null, /*#__PURE__*/React.createElement(Button, {
appearance: "link",
onClick: this.onMoreFiltersClick
}, /*#__PURE__*/React.createElement(FormattedMessage, messages.confluence_more_filters)))));
}
}
export default withAnalyticsEvents()(ConfluenceFilterGroup);