import routes from './routes.js' import token from './token.js' export default ($env) => { console.log($env, $vyes.root) token.setBaseUrl($env.root) token.wrapAxios($env.$axios) $env.$G.token = token $env.$G.user = token.body() $env.$router.addRoutes(routes) $env.$router.beforeEnter = async (to, from, next) => { if (to.meta && to.meta.auth) { if (token.isExpired()) { await token.refresh() } if (token.isExpired()) { token.logout(to.fullPath) } } else { next(); } }; $env.$axios.interceptors.response.use(function(response) { if (response?.data) { return response.data } return response; }, function(error) { let data = error.response ? error.response.data : error.response return Promise.reject(data.message || data); }); }