UNPKG

tamim-cli

Version:

A CLI tool for generating module boilerplate code including routes, controllers, services, and more

33 lines (30 loc) 1.18 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.serviceLogicHelper = void 0; const filterIncluded = (capitalizedModuleName, generateSearchFields, fields) => { return `const getAll${capitalizedModuleName}s = async (queryFields: Record<string, any>): Promise<I${capitalizedModuleName}[]> => { const { search, page, limit } = queryFields; const query = search ? { $or: [${generateSearchFields(fields)}] } : {}; let queryBuilder = ${capitalizedModuleName}.find(query); if (page && limit) { queryBuilder = queryBuilder.skip((page - 1) * limit).limit(limit); }else{ queryBuilder = queryBuilder.skip(0).limit(10); } delete queryFields.search; delete queryFields.page; delete queryFields.limit; queryBuilder.find(queryFields); return await queryBuilder; };`; }; const filterNotIncluded = (capitalizedModuleName) => { return `const getAll${capitalizedModuleName}s = async (): Promise<I${capitalizedModuleName}[]> => { const result = await ${capitalizedModuleName}.find(); return result; };`; }; exports.serviceLogicHelper = { filterIncluded, filterNotIncluded, };