diff options
Diffstat (limited to 'app/assets/javascripts/custom_emoji/routes.js')
-rw-r--r-- | app/assets/javascripts/custom_emoji/routes.js | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/app/assets/javascripts/custom_emoji/routes.js b/app/assets/javascripts/custom_emoji/routes.js new file mode 100644 index 00000000000..938475d81cd --- /dev/null +++ b/app/assets/javascripts/custom_emoji/routes.js @@ -0,0 +1,35 @@ +import IndexComponent from './pages/index.vue'; +import NewComponent from './pages/new.vue'; +import userPermissionsQuery from './queries/user_permissions.query.graphql'; +import defaultClient from './graphql_client'; + +export default [ + { + path: '/', + component: IndexComponent, + }, + { + path: '/new', + component: NewComponent, + async beforeEnter(to, from, next) { + const { + data: { + group: { + userPermissions: { createCustomEmoji }, + }, + }, + } = await defaultClient.query({ + query: userPermissionsQuery, + variables: { + groupPath: document.body.dataset.groupFullPath, + }, + }); + + if (!createCustomEmoji) { + next({ path: '/' }); + } else { + next(); + } + }, + }, +]; |