"use strict"; exports.__esModule = true; exports.route = route; exports.functionalRoute = functionalRoute; exports.routeProps = void 0; /** * Vue Router support */ function isRedundantNavigation(err) { return err.name === 'NavigationDuplicated' || // compatible with vue-router@3.3 err.message && err.message.indexOf('redundant navigation') !== -1; } function route(router, config) { var to = config.to, url = config.url, replace = config.replace; if (to && router) { var promise = router[replace ? 'replace' : 'push'](to); /* istanbul ignore else */ if (promise && promise.catch) { promise.catch(function (err) { if (err && !isRedundantNavigation(err)) { throw err; } }); } } else if (url) { replace ? location.replace(url) : location.href = url; } } function functionalRoute(context) { route(context.parent && context.parent.$router, context.props); } var routeProps = { url: String, replace: Boolean, to: [String, Object] }; exports.routeProps = routeProps;