navModel.ts 739 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. import { NavModel, NavModelItem, NavIndex } from 'app/types';
  2. function getNotFoundModel(): NavModel {
  3. var node: NavModelItem = {
  4. id: 'not-found',
  5. text: 'Page not found',
  6. icon: 'fa fa-fw fa-warning',
  7. subTitle: '404 Error',
  8. url: 'not-found',
  9. };
  10. return {
  11. node: node,
  12. main: node,
  13. };
  14. }
  15. export function getNavModel(navIndex: NavIndex, id: string): NavModel {
  16. if (navIndex[id]) {
  17. const node = navIndex[id];
  18. const main = {
  19. ...node.parentItem,
  20. };
  21. main.children = main.children.map(item => {
  22. return {
  23. ...item,
  24. active: item.url === node.url,
  25. };
  26. });
  27. return {
  28. node: node,
  29. main: main,
  30. };
  31. } else {
  32. return getNotFoundModel();
  33. }
  34. }