diff --git a/plop/models/Model.ts.hbs b/plop/models/Model.ts.hbs index 13a74b1..3c17667 100644 --- a/plop/models/Model.ts.hbs +++ b/plop/models/Model.ts.hbs @@ -1,11 +1,11 @@ import { Sequelize, Model, DataTypes, ModelCtor } from 'sequelize'; -export class {{name}} extends Model { +export class {{modelName}} extends Model { static initialize(sequelize: Sequelize) { this.init( { {{#each scalarFields}} - {{name}}: { + {{fieldName}}: { type: {{#if isList}}DataTypes.ARRAY(DataTypes.{{type}}){{else}}DataTypes.{{{type}}}{{/if}},{{#if (eq allowNull false)}} allowNull: {{allowNull}},{{/if}}{{#if (and hasDefaultValue (eq isAutoincrement false))}} defaultValue: '{{default}}',{{/if}}{{#if isId}} @@ -17,8 +17,8 @@ export class {{name}} extends Model { }, { sequelize, - modelName: '{{name}}', - tableName: '{{#if dbName}}{{dbName}}{{else}}{{name}}{{/if}}', + modelName: '{{modelName}}', + tableName: '{{#if dbName}}{{dbName}}{{else}}{{modelName}}{{/if}}', timestamps: {{or (or hasCreatedAt hasUpdatedAt) hasDeletedAt}},{{#if (or (or hasCreatedAt hasUpdatedAt) hasDeletedAt)}}{{#if (eq hasCreatedAt false)}} createdAt: false,{{/if}}{{#if (eq hasUpdatedAt false)}} updatedAt: false,{{/if}}{{!-- {{#if (eq hasDeletedAt false)}} diff --git a/plop/models/index.ts.hbs b/plop/models/index.ts.hbs index 0c48e76..fde641d 100644 --- a/plop/models/index.ts.hbs +++ b/plop/models/index.ts.hbs @@ -1,3 +1,3 @@ {{#each models}} -export * from './{{name}}'; +export * from './{{modelName}}'; {{/each}} diff --git a/plop/plopfile.js b/plop/plopfile.js index 96171dd..855babc 100644 --- a/plop/plopfile.js +++ b/plop/plopfile.js @@ -53,7 +53,7 @@ module.exports = function (plop) { actions: () => [ { type: 'add', - path: 'models/{{name}}.ts', + path: 'models/{{modelName}}.ts', templateFile: path.join(__dirname, './models/Model.ts.hbs'), }, ], diff --git a/src/generator/properties.ts b/src/generator/properties.ts index d81620a..e9f3313 100644 --- a/src/generator/properties.ts +++ b/src/generator/properties.ts @@ -9,7 +9,7 @@ export const PrismaTypeToSequelizeType: Record = { }; export interface ModelProperties { - name: string; + modelName: string; dbName: string; scalarFields: ScalarProperties[]; belongsToFields: RelationProperties[]; @@ -33,7 +33,7 @@ export interface ScalarProperties { default: any; isId: boolean; isUnique: boolean; - name: string; + fieldName: string; type: string; allowNull: boolean; isAutoincrement: boolean; diff --git a/src/generator/transformDMMF.ts b/src/generator/transformDMMF.ts index 9c3b313..5d8869e 100644 --- a/src/generator/transformDMMF.ts +++ b/src/generator/transformDMMF.ts @@ -20,7 +20,7 @@ export function transformDMMF(dmmf: DMMF.Document) { default: 'default', isId: 'isId', isUnique: 'isUnique', - name: 'name', + fieldName: 'name', type: (field: DMMF.Field) => field.kind === 'scalar' ? R.prop(field.type, PrismaTypeToSequelizeType) @@ -37,7 +37,7 @@ export function transformDMMF(dmmf: DMMF.Document) { }); const modelMorphism = morphism>({ - name: 'name', + modelName: 'name', dbName: 'dbName', scalarFields: { path: 'fields',