INNER CODE UNIT · TypeScript

generateSchemas

afteracademy/wimm-apis · .templates/feature.generator.ts:105

async function generateSchemas(featureDir: string, featureName: string) {
  const schemasDirPath = join(featureDir, 'schemas');
  await mkdir(schemasDirPath);

  const featureLower = featureName.toLowerCase();
  const featureCaps = capitalizeFirstLetter(featureName);
  const schemaPath = join(featureDir, `schemas/${featureLower}.schema.ts`);

  const template = `import { Prop, Schema, SchemaFactory } from '@nestjs/mongoose';
import mongoose, { HydratedDocument, Types } from 'mongoose';
import { User } from '../../user/schemas/user.schema';

export type ${featureCaps}Document = HydratedDocument<${featureCaps}>;

@Schema({ collection: '${featureLower}s', versionKey: false, timestamps: true })
export class ${featureCaps} {
  readonly _id: Types.ObjectId;

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…