UNPKG

ruch

Version:

Revolutionary React TypeScript CLI with hexagonal architecture & AI-powered development assistance. Create maintainable, scalable applications with domain-driven design and integrated AI tooling.

40 lines (35 loc) 1.22 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getPortTemplate = void 0; const getPortTemplate = (domainName) => { const capitalizedName = domainName.charAt(0).toUpperCase() + domainName.slice(1); return `import type { ${capitalizedName}Entity, ${capitalizedName}CreationData, ${capitalizedName}UpdateData } from '../entities/${capitalizedName}'; /** * Port interface for ${capitalizedName} domain * This interface defines the contract that adapters must implement */ export interface ${capitalizedName}Port { /** * Get all ${domainName} entities */ getAll(): Promise<${capitalizedName}Entity[]>; /** * Get a ${domainName} entity by ID */ getById(id: string): Promise<${capitalizedName}Entity>; /** * Create a new ${domainName} entity */ create(data: ${capitalizedName}CreationData): Promise<${capitalizedName}Entity>; /** * Update an existing ${domainName} entity */ update(id: string, data: ${capitalizedName}UpdateData): Promise<${capitalizedName}Entity>; /** * Delete a ${domainName} entity */ delete(id: string): Promise<void>; }`; }; exports.getPortTemplate = getPortTemplate; //# sourceMappingURL=ports.js.map