mirror of
				https://github.com/strapi/strapi.git
				synced 2025-10-31 18:08:11 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			44 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			44 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| 'use strict';
 | |
| 
 | |
| const userUID = 'plugin::users-permissions.user';
 | |
| const roleUID = 'plugin::users-permissions.role';
 | |
| 
 | |
| module.exports = (context) => {
 | |
|   const { nexus, strapi } = context;
 | |
| 
 | |
|   const { naming } = strapi.plugin('graphql').service('utils');
 | |
| 
 | |
|   const user = strapi.getModel(userUID);
 | |
|   const role = strapi.getModel(roleUID);
 | |
| 
 | |
|   const mutations = {
 | |
|     // CRUD (user & role)
 | |
|     [naming.getCreateMutationTypeName(role)]: require('./crud/role/create-role'),
 | |
|     [naming.getUpdateMutationTypeName(role)]: require('./crud/role/update-role'),
 | |
|     [naming.getDeleteMutationTypeName(role)]: require('./crud/role/delete-role'),
 | |
|     [naming.getCreateMutationTypeName(user)]: require('./crud/user/create-user'),
 | |
|     [naming.getUpdateMutationTypeName(user)]: require('./crud/user/update-user'),
 | |
|     [naming.getDeleteMutationTypeName(user)]: require('./crud/user/delete-user'),
 | |
| 
 | |
|     // Other mutations
 | |
|     login: require('./auth/login'),
 | |
|     register: require('./auth/register'),
 | |
|     forgotPassword: require('./auth/forgot-password'),
 | |
|     resetPassword: require('./auth/reset-password'),
 | |
|     changePassword: require('./auth/change-password'),
 | |
|     emailConfirmation: require('./auth/email-confirmation'),
 | |
|   };
 | |
| 
 | |
|   return nexus.extendType({
 | |
|     type: 'Mutation',
 | |
| 
 | |
|     definition(t) {
 | |
|       for (const [name, getConfig] of Object.entries(mutations)) {
 | |
|         const config = getConfig(context);
 | |
| 
 | |
|         t.field(name, config);
 | |
|       }
 | |
|     },
 | |
|   });
 | |
| };
 | 
