@simpleapps-com/augur-api
Version:
TypeScript client library for Augur microservices API endpoints
90 lines • 3.35 kB
JavaScript
import { TransUserParamsSchema, TransUserCreateParamsSchema, TransUserResponseSchema, } from '../schemas';
/**
* Creates the transUser resource methods
* OpenAPI Path: /trans-user → transUser.*
* @description User management and CRUD operations following OpenAPI path mirroring pattern
*/
export function createTransUserResource(executeRequest) {
return {
/**
* Create new transaction user - OpenAPI Path: /trans-user
*/
create: async (params) => {
return executeRequest({
method: 'POST',
path: '/trans-user',
paramsSchema: TransUserCreateParamsSchema,
responseSchema: TransUserResponseSchema,
}, params || {});
},
/**
* Get transaction user details by user UID - OpenAPI Path: /trans-user/{usersUid}
*/
get: async (usersUid, params) => {
return executeRequest({
method: 'GET',
path: `/trans-user/${usersUid}`,
paramsSchema: TransUserParamsSchema,
responseSchema: TransUserResponseSchema,
}, { usersUid, ...params }, { usersUid: String(usersUid) });
},
/**
* Update transaction user by user UID - OpenAPI Path: /trans-user/{usersUid}
*/
update: async (usersUid, params) => {
return executeRequest({
method: 'PUT',
path: `/trans-user/${usersUid}`,
paramsSchema: TransUserParamsSchema,
responseSchema: TransUserResponseSchema,
}, { usersUid, ...params }, { usersUid: String(usersUid) });
},
/**
* Delete transaction user by user UID - OpenAPI Path: /trans-user/{usersUid}
*/
delete: async (usersUid, params) => {
return executeRequest({
method: 'DELETE',
path: `/trans-user/${usersUid}`,
paramsSchema: TransUserParamsSchema,
responseSchema: TransUserResponseSchema,
}, { usersUid, ...params }, { usersUid: String(usersUid) });
},
};
}
/**
* Creates the transUserData resource methods (data-only versions)
*/
export function createTransUserDataResource(transUser) {
return {
/**
* Create user and return only data without response metadata
*/
create: async (params) => {
const response = await transUser.create(params);
return response.data;
},
/**
* Get user and return only data without response metadata
*/
get: async (usersUid, params) => {
const response = await transUser.get(usersUid, params);
return response.data;
},
/**
* Update user and return only data without response metadata
*/
update: async (usersUid, params) => {
const response = await transUser.update(usersUid, params);
return response.data;
},
/**
* Delete user and return only data without response metadata
*/
delete: async (usersUid, params) => {
const response = await transUser.delete(usersUid, params);
return response.data;
},
};
}
//# sourceMappingURL=trans-user.js.map