diff options
Diffstat (limited to 'app/assets/javascripts/admin/users/index.js')
-rw-r--r-- | app/assets/javascripts/admin/users/index.js | 47 |
1 files changed, 6 insertions, 41 deletions
diff --git a/app/assets/javascripts/admin/users/index.js b/app/assets/javascripts/admin/users/index.js index 0c485d2a239..2bd37d3fffe 100644 --- a/app/assets/javascripts/admin/users/index.js +++ b/app/assets/javascripts/admin/users/index.js @@ -4,13 +4,8 @@ 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 ModalManager from './components/modals/user_modal_manager.vue'; +import DeleteUserModal from './components/modals/delete_user_modal.vue'; import UserActions from './components/user_actions.vue'; -import { - CONFIRM_DELETE_BUTTON_SELECTOR, - MODAL_TEXTS_CONTAINER_SELECTOR, - MODAL_MANAGER_SELECTOR, -} from './constants'; Vue.use(VueApollo); @@ -46,43 +41,13 @@ export const initAdminUserActions = (el = document.querySelector('#js-admin-user initApp(el, UserActions, 'user', { showButtonLabels: true }); export const initDeleteUserModals = () => { - const modalsMountElement = document.querySelector(MODAL_TEXTS_CONTAINER_SELECTOR); - - if (!modalsMountElement) { - return; - } - - const modalConfiguration = Array.from(modalsMountElement.children).reduce((accumulator, node) => { - const { modal, ...config } = node.dataset; - - return { - ...accumulator, - [modal]: { - title: node.dataset.title, - ...config, - content: node.innerHTML, - }, - }; - }, {}); - - // eslint-disable-next-line no-new - new Vue({ - el: MODAL_MANAGER_SELECTOR, + return new Vue({ functional: true, - methods: { - show(...args) { - this.$refs.manager.show(...args); - }, - }, - render(h) { - return h(ModalManager, { - ref: 'manager', + render: (createElement) => + createElement(DeleteUserModal, { props: { - selector: CONFIRM_DELETE_BUTTON_SELECTOR, - modalConfiguration, csrfToken: csrf.token, }, - }); - }, - }); + }), + }).$mount(); }; |