All files / ee/app/assets/javascripts/insights insights_router.js

100% Statements 7/7
100% Branches 2/2
100% Functions 2/2
100% Lines 7/7

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25          1x     1x           1x 1x   1x   1x     1x    
import Vue from 'vue';
import VueRouter from 'vue-router';
import store from 'ee/insights/stores';
import { joinPaths } from '~/lib/utils/url_utility';
 
Vue.use(VueRouter);
 
export default function createRouter(base) {
  const router = new VueRouter({
    mode: 'hash',
    base: joinPaths(gon.relative_url_root || '', base),
    routes: [{ path: '/:tabId' }],
  });
 
  router.beforeEach((to, from, next) => {
    const page = to.path.substr(1);
 
    store.dispatch('insights/setActiveTab', page);
 
    next();
  });
 
  return router;
}