summaryrefslogtreecommitdiffstats
path: root/sdnr/wt/odlux/apps/inventoryApp/src/views/treeview.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'sdnr/wt/odlux/apps/inventoryApp/src/views/treeview.tsx')
-rw-r--r--sdnr/wt/odlux/apps/inventoryApp/src/views/treeview.tsx65
1 files changed, 45 insertions, 20 deletions
diff --git a/sdnr/wt/odlux/apps/inventoryApp/src/views/treeview.tsx b/sdnr/wt/odlux/apps/inventoryApp/src/views/treeview.tsx
index 9544861ef..cfcfd3fec 100644
--- a/sdnr/wt/odlux/apps/inventoryApp/src/views/treeview.tsx
+++ b/sdnr/wt/odlux/apps/inventoryApp/src/views/treeview.tsx
@@ -24,10 +24,13 @@ import { TreeView, TreeViewCtorType, SearchMode } from '../../../../framework/sr
import { IApplicationStoreState } from "../../../../framework/src/store/applicationStore";
+import Breadcrumbs from '@material-ui/core/Breadcrumbs';
+import Link from '@material-ui/core/Link';
+
import { updateInventoryTreeAsyncAction, selectInventoryNodeAsyncAction, UpdateSelectedNodeAction, UpdateExpandedNodesAction, setSearchTermAction } from "../actions/inventoryTreeActions";
import { TreeDemoItem } from "../models/inventory";
-import { RouteComponentProps } from "react-router-dom";
+import { RouteComponentProps } from 'react-router-dom';
const styles = (theme: Theme) => createStyles({
root: {
@@ -56,7 +59,7 @@ const mapProps = (state: IApplicationStoreState) => ({
const mapDispatch = (dispatcher: IDispatcher) => ({
updateExpendedNodes: (expendedNodes: TreeDemoItem[]) => dispatcher.dispatch(new UpdateExpandedNodesAction(expendedNodes)),
- updateInventoryTree: (mountId: string, seatchTerm?: string) => dispatcher.dispatch(updateInventoryTreeAsyncAction(mountId, seatchTerm)),
+ updateInventoryTree: (mountId: string, searchTerm?: string) => dispatcher.dispatch(updateInventoryTreeAsyncAction(mountId, searchTerm)),
selectTreeNode: (nodeId?: string) => nodeId ? dispatcher.dispatch(selectInventoryNodeAsyncAction(nodeId)) : dispatcher.dispatch(new UpdateSelectedNodeAction(undefined)),
setSearchTerm: (searchTerm: string) => dispatcher.dispatch(setSearchTermAction(searchTerm)),
});
@@ -97,24 +100,46 @@ class DashboardComponent extends React.Component<TreeviewComponentProps, Treevie
render() {
const { classes, updateInventoryTree, updateExpendedNodes, expendedItems, selectedNode, selectTreeNode, searchTerm, match: { params: { mountId } } } = this.props;
const scrollbar = { overflow: "auto", paddingRight: "20px" }
+
+ let filteredDashboardPath = `/inventory/dashboard/${this.props.match.params.mountId}`;
+ let basePath = `/inventory/${this.props.match.params.mountId}`;
+
return (
- <div style={scrollbar} className={classes.root}>
- <InventoryTree className={classes.tree} items={this.state.rootNodes} enableSearchBar initialSearchTerm={searchTerm} searchMode={SearchMode.OnEnter} searchTerm={searchTerm}
- onSearch={(searchTerm) => updateInventoryTree(mountId, searchTerm)} expandedItems={expendedItems} onFolderClick={(item) => {
- const indexOfItemToToggle = expendedItems.indexOf(item);
- if (indexOfItemToToggle === -1) {
- updateExpendedNodes([...expendedItems, item]);
- } else {
- updateExpendedNodes([
- ...expendedItems.slice(0, indexOfItemToToggle),
- ...expendedItems.slice(indexOfItemToToggle + 1),
- ]);
- }
- }}
- onItemClick={(elm) => selectTreeNode(elm.value)} />
- <div className={classes.details}>{
- selectedNode && renderObject(selectedNode, "tree-view") || null
- }</div>
+ <div style={scrollbar} >
+ <div >
+ <Breadcrumbs aria-label="breadcrumbs">
+ <Link color="inherit" href="#" aria-label="back-breadcrumb"
+ onClick={(event: React.MouseEvent<HTMLElement>) => {
+ event.preventDefault();
+ this.props.history.push(filteredDashboardPath);
+ }}>Back</Link>
+ <Link color="inherit" href="#"
+ aria-label={this.props.match.params.mountId + '-breadcrumb'}
+ onClick={(event: React.MouseEvent<HTMLElement>) => {
+ event.preventDefault();
+ this.props.history.push(basePath);
+ }}><span>{this.props.match.params.mountId}</span></Link>
+ </Breadcrumbs>
+ </div>
+ <br />
+ <div style={scrollbar} className={classes.root}>
+ <InventoryTree className={classes.tree} items={this.state.rootNodes} enableSearchBar initialSearchTerm={searchTerm} searchMode={SearchMode.OnEnter} searchTerm={searchTerm}
+ onSearch={(searchTerm) => updateInventoryTree(mountId, searchTerm)} expandedItems={expendedItems} onFolderClick={(item) => {
+ const indexOfItemToToggle = expendedItems.indexOf(item);
+ if (indexOfItemToToggle === -1) {
+ updateExpendedNodes([...expendedItems, item]);
+ } else {
+ updateExpendedNodes([
+ ...expendedItems.slice(0, indexOfItemToToggle),
+ ...expendedItems.slice(indexOfItemToToggle + 1),
+ ]);
+ }
+ }}
+ onItemClick={(elm) => selectTreeNode(elm.value)} />
+ <div className={classes.details}>{
+ selectedNode && renderObject(selectedNode, "tree-view") || null
+ }</div>
+ </div>
</div>
);
}
@@ -125,7 +150,7 @@ class DashboardComponent extends React.Component<TreeviewComponentProps, Treevie
}
componentWillUnmount() {
- this.props.setSearchTerm("");
+ this.props.setSearchTerm("*");
}
}