terriajs
Version:
Geospatial data visualization platform.
29 lines (24 loc) • 1 kB
JSX
import Loader from '../Loader.jsx';
import ObserveModelMixin from '../ObserveModelMixin';
import React from 'react';
import createReactClass from 'create-react-class';
import PropTypes from 'prop-types';
import Styles from './search-header.scss';
/** Renders either a loader or a message based off search state. */
export default createReactClass({
mixins: [ObserveModelMixin],
displayName: 'SearchHeader',
propTypes: {
searchProvider: PropTypes.object.isRequired,
isWaitingForSearchToStart: PropTypes.bool
},
render() {
if (this.props.searchProvider.isSearching || this.props.isWaitingForSearchToStart) {
return <div key="loader" className={Styles.loader}><Loader/></div>;
} else if (this.props.searchProvider.searchMessage) {
return <div key="message" className={Styles.noResults}>{this.props.searchProvider.searchMessage}</div>;
} else {
return null;
}
}
});