sx-cli-tool
Version:
Laravel va Vue frameworklaridagi monolith arxitektura loyihalarni boshqarish uchun mo'ljallangan CLI tool
29 lines (26 loc) • 1.04 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.generateService = generateService;
const fs_1 = __importDefault(require("fs"));
const path_1 = __importDefault(require("path"));
const folder_1 = require("../../utils/folder");
function generateService(entityName) {
const servicePath = path_1.default.join("src", "services", `${entityName}Service.ts`);
// Ensure the services directory exists
(0, folder_1.ensureDirectoryExists)(servicePath);
const serviceTemplate = `
import axios from 'axios';
export const use${entityName}Service = () => {
const fetchData = async () => {
const response = await axios.get('/api/${entityName.toLowerCase()}');
return response.data;
};
return { fetchData };
};
`;
fs_1.default.writeFileSync(servicePath, serviceTemplate, "utf8");
console.log(`Service generated at ${servicePath}`);
}