Skip to content

Commit

Permalink
Merge pull request Marklogic-retired#61 in PROD/explorer-ui from ~BAN…
Browse files Browse the repository at this point in the history
…/explorer-ui:header-fix to develop

* commit '57f8d4e19fa0a95f6898ab06953178157e67f23b':
  added header parameter check and created selected facets component
  • Loading branch information
Bruce An authored and Bruce An committed Oct 18, 2019
2 parents f63f08e + 57f8d4e commit 90e8558
Show file tree
Hide file tree
Showing 4 changed files with 85 additions and 44 deletions.
4 changes: 2 additions & 2 deletions src/components/search-result/search-result.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@ const SearchResult: React.FC<Props> = (props) => {
entityDef = props.entityDefArray.length && props.entityDefArray.find(entity => entity.name === itemEntityName[0]);
primaryKeyValue = entityDef.primaryKey ? itemEntityProperties[0][entityDef.primaryKey] : '-';
// TODO format createdOnVal using momentjs
createdOnVal = props.item.extracted.content[0].headers.createdOn.toString().substring(0, 19);
sourcesVal = props.item.extracted.content[0].headers.sources.map(src => {
createdOnVal = props.item.extracted.content[0].headers.hasOwnProperty('createdOn') && props.item.extracted.content[0].headers.createdOn.toString().substring(0, 19);
sourcesVal = props.item.extracted.content[0].headers.hasOwnProperty('sources') && props.item.extracted.content[0].headers.sources.map(src => {
return src.name;
}).join(', ');
fileTypeVal = props.item.format;
Expand Down
19 changes: 19 additions & 0 deletions src/components/selected-facets/selected-facets.module.scss
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
.clearContainer {
margin: 10px 0 0 17px;
}

.clearAllBtn {
margin-right: 2px;
}

.facetButton {
max-width: 150px;
text-overflow: ellipsis;
overflow: hidden;
margin: 0 2px 2px 0;
}

.dateFacet {
width: 225px;
margin: 2px 2px 2px 0;
}
61 changes: 61 additions & 0 deletions src/components/selected-facets/selected-facets.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
import React, { useContext } from 'react';
import { Icon, Button } from 'antd';
import { SearchContext } from '../../util/search-context';
import styles from './selected-facets.module.scss';

interface Props {
selectedFacets: any[];
};

const SelectedFacets: React.FC<Props> = (props) => {
const {
clearAllFacets,
clearFacet,
searchOptions,
clearDateFacet
} = useContext(SearchContext);

return (
<div
className={styles.clearContainer}
style={ Object.entries(searchOptions.searchFacets).length === 0 ? {'visibility': 'hidden'} : {'visibility': 'visible'}}
>
<Button
size="small"
className={styles.clearAllBtn}
onClick={()=> clearAllFacets()}
>
<Icon type='close'/>
Clear All
</Button>
{ props.selectedFacets.map((item, index) => {
if (item.constraint === 'createdOnRange') {
return (
<Button
size="small"
className={styles.dateFacet}
key={index}
onClick={()=> clearDateFacet()}
>
<Icon type='close'/>
{item.facet.join(' ~ ')}
</Button>
)
}
return (
<Button
size="small"
className={styles.facetButton}
key={index}
onClick={()=> clearFacet(item.constraint, item.facet)}
>
<Icon type='close'/>
{item.facet}
</Button>
)
})}
</div>
);
}

export default SelectedFacets;
45 changes: 3 additions & 42 deletions src/components/sidebar/sidebar.tsx
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
import React, { useState, useEffect, useContext } from 'react';
import { Collapse, Icon, Button, DatePicker } from 'antd';
import moment from 'moment';
import { SearchContext } from '../../util/search-context';
import Facet from '../facet/facet';
import SelectedFacets from '../selected-facets/selected-facets';
import { SearchContext } from '../../util/search-context';
import { facetParser } from '../../util/data-conversion';
import hubPropertiesConfig from '../../config/hub-properties.config';
import styles from './sidebar.module.scss';
Expand All @@ -12,8 +13,6 @@ const { RangePicker } = DatePicker;

const Sidebar = (props) => {
const {
clearAllFacets,
clearFacet,
searchOptions,
setDateFacet,
clearDateFacet
Expand Down Expand Up @@ -71,45 +70,7 @@ const Sidebar = (props) => {

return (
<>
<div
className={styles.clearContainer}
style={ Object.entries(searchOptions.searchFacets).length === 0 ? {'visibility': 'hidden'} : {'visibility': 'visible'}}
>
<Button
size="small"
className={styles.clearAllBtn}
onClick={()=> clearAllFacets()}
>
<Icon type='close'/>
Clear All
</Button>
{ selectedFacets.map((item, index) => {
if (item.constraint === 'createdOnRange') {
return (
<Button
size="small"
className={styles.dateFacet}
key={index}
onClick={()=> clearDateFacet()}
>
<Icon type='close'/>
{item.facet.join(' ~ ')}
</Button>
)
}
return (
<Button
size="small"
className={styles.facetButton}
key={index}
onClick={()=> clearFacet(item.constraint, item.facet)}
>
<Icon type='close'/>
{item.facet}
</Button>
)
})}
</div>
<SelectedFacets selectedFacets={selectedFacets}/>
<Collapse
className={styles.sidebarContainer}
defaultActiveKey={['entityProperties', 'hubProperties']}
Expand Down

0 comments on commit 90e8558

Please sign in to comment.