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 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 | 1x 1x 1x 2x 2x 2x 2x 1x 1x 1x 1x 1x | import Vue from 'vue'; import VueApollo from 'vue-apollo'; import createDefaultClient from '~/lib/graphql'; import { convertObjectPropsToCamelCase } from '~/lib/utils/common_utils'; import csrf from '~/lib/utils/csrf'; import AdminUsersApp from './components/app.vue'; import DeleteUserModal from './components/modals/delete_user_modal.vue'; import UserActions from './components/user_actions.vue'; Vue.use(VueApollo); const apolloProvider = new VueApollo({ defaultClient: createDefaultClient(), }); const initApp = (el, component, userPropKey, props = {}) => { Iif (!el) { return false; } const { [userPropKey]: user, paths } = el.dataset; return new Vue({ el, apolloProvider, render: (createElement) => createElement(component, { props: { [userPropKey]: convertObjectPropsToCamelCase(JSON.parse(user), { deep: true }), paths: convertObjectPropsToCamelCase(JSON.parse(paths)), ...props, }, }), }); }; export const initAdminUsersApp = (el = document.querySelector('#js-admin-users-app')) => initApp(el, AdminUsersApp, 'users'); export const initAdminUserActions = (el = document.querySelector('#js-admin-user-actions')) => initApp(el, UserActions, 'user', { showButtonLabels: true }); export const initDeleteUserModals = () => { return new Vue({ functional: true, render: (createElement) => createElement(DeleteUserModal, { props: { csrfToken: csrf.token, }, }), }).$mount(); }; |