summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/admin/users/index.js
diff options
context:
space:
mode:
Diffstat (limited to 'app/assets/javascripts/admin/users/index.js')
-rw-r--r--app/assets/javascripts/admin/users/index.js47
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();
};