Use entity-schemas as entities
This commit is contained in:
parent
2ad72d2925
commit
960fc96d28
@ -19,7 +19,7 @@ app:
|
||||
migrationsRun: false
|
||||
logging: true
|
||||
entities:
|
||||
- src/entity-schemas/*Entity.ts
|
||||
- src/entities/*Entity.ts
|
||||
migrations:
|
||||
- src/migrations/index.ts
|
||||
cli:
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
import { ServerBootstrap } from './application'
|
||||
import { configureServer } from './application/configureServer'
|
||||
import { config } from './config'
|
||||
import * as entities from './entity-schemas'
|
||||
import * as entities from './entities'
|
||||
import * as migrations from './migrations'
|
||||
|
||||
export default new ServerBootstrap({
|
||||
|
||||
@ -1,17 +0,0 @@
|
||||
// import { CreateDateColumn, PrimaryGeneratedColumn, UpdateDateColumn } from 'typeorm'
|
||||
|
||||
// const transformer = {
|
||||
// from: (value: Date) => !isNaN(value.getTime()) ? value.toISOString() : value,
|
||||
// to: (value: undefined | null | string) => value ? new Date(value) : value,
|
||||
// }
|
||||
|
||||
// export abstract class BaseEntity {
|
||||
// @PrimaryGeneratedColumn({type: 'bigint'})
|
||||
// id!: number
|
||||
|
||||
// @CreateDateColumn({transformer, type: 'datetime'})
|
||||
// createDate!: string
|
||||
|
||||
// @UpdateDateColumn({transformer, type: 'datetime'})
|
||||
// updateDate!: string
|
||||
// }
|
||||
@ -1,8 +0,0 @@
|
||||
// import { Column, Entity } from 'typeorm'
|
||||
// import { BaseEntity } from './BaseEntity'
|
||||
|
||||
// @Entity()
|
||||
// export class Role extends BaseEntity {
|
||||
// @Column({ unique: true })
|
||||
// name!: string
|
||||
// }
|
||||
@ -1,22 +0,0 @@
|
||||
// import { Column, Entity, Index, ManyToOne, PrimaryColumn } from 'typeorm'
|
||||
// import { DefaultSession } from '../session/DefaultSession'
|
||||
// import { User } from './User'
|
||||
|
||||
// @Entity()
|
||||
// export class Session implements DefaultSession {
|
||||
// @PrimaryColumn()
|
||||
// id!: string
|
||||
|
||||
// @Index()
|
||||
// @Column({type: 'bigint'})
|
||||
// expiredAt: number = Date.now()
|
||||
|
||||
// @ManyToOne(type => User, user => user.sessions)
|
||||
// user?: User
|
||||
|
||||
// @Column({ nullable: true })
|
||||
// userId!: number
|
||||
|
||||
// @Column('text')
|
||||
// json = ''
|
||||
// }
|
||||
@ -1,20 +0,0 @@
|
||||
// import { Column, Entity, Index, ManyToOne, OneToMany } from 'typeorm'
|
||||
// import { BaseEntity } from './BaseEntity'
|
||||
// import { User } from './User'
|
||||
// import { UserTeam } from './UserTeam'
|
||||
|
||||
// @Entity()
|
||||
// export class Team extends BaseEntity {
|
||||
// @Column()
|
||||
// name!: string
|
||||
|
||||
// @Column()
|
||||
// @Index()
|
||||
// userId!: number
|
||||
|
||||
// @ManyToOne(type => User)
|
||||
// user?: User
|
||||
|
||||
// @OneToMany(type => UserTeam, userTeam => userTeam.team)
|
||||
// userTeams!: UserTeam[]
|
||||
// }
|
||||
@ -1,27 +0,0 @@
|
||||
// import { Column, Entity, OneToMany } from 'typeorm'
|
||||
// import { BaseEntity } from './BaseEntity'
|
||||
// import { Session } from './Session'
|
||||
// import { UserEmail } from './UserEmail'
|
||||
// import { UserTeam } from './UserTeam'
|
||||
|
||||
// @Entity()
|
||||
// export class User extends BaseEntity {
|
||||
// @Column()
|
||||
// firstName!: string
|
||||
|
||||
// @Column()
|
||||
// lastName!: string
|
||||
|
||||
// @OneToMany(type => UserEmail, email => email.user)
|
||||
// emails!: UserEmail[]
|
||||
|
||||
// // bcrypt encoded password
|
||||
// @Column({nullable: true, length: '60', select: false})
|
||||
// password?: string
|
||||
|
||||
// @OneToMany(type => Session, session => session.user)
|
||||
// sessions!: Session[]
|
||||
|
||||
// @OneToMany(type => UserTeam, userTeam => userTeam.user)
|
||||
// userTeams!: UserTeam[]
|
||||
// }
|
||||
@ -1,15 +0,0 @@
|
||||
// import { Column, Entity, ManyToOne } from 'typeorm'
|
||||
// import { BaseEntity } from './BaseEntity'
|
||||
// import { User } from './User'
|
||||
|
||||
// @Entity()
|
||||
// export class UserEmail extends BaseEntity {
|
||||
// @Column({unique: true})
|
||||
// email!: string
|
||||
|
||||
// @ManyToOne(type => User, user => user.emails)
|
||||
// user?: User
|
||||
|
||||
// @Column()
|
||||
// userId?: number = undefined
|
||||
// }
|
||||
@ -1,26 +0,0 @@
|
||||
// import { Column, Entity, ManyToOne } from 'typeorm'
|
||||
// import { BaseEntity } from './BaseEntity'
|
||||
// import { Role } from './Role'
|
||||
// import { Team } from './Team'
|
||||
// import { User } from './User'
|
||||
|
||||
// @Entity()
|
||||
// export class UserTeam extends BaseEntity {
|
||||
// @ManyToOne(type => User, user => user.userTeams)
|
||||
// user!: User
|
||||
|
||||
// @Column()
|
||||
// userId!: number
|
||||
|
||||
// @ManyToOne(type => Team, team => team.userTeams)
|
||||
// team?: Team
|
||||
|
||||
// @Column()
|
||||
// teamId!: number
|
||||
|
||||
// @ManyToOne(type => Role)
|
||||
// role?: Role
|
||||
|
||||
// @Column()
|
||||
// roleId!: number
|
||||
// }
|
||||
@ -1,7 +1,6 @@
|
||||
// export * from './BaseEntity'
|
||||
// export * from './Role'
|
||||
// export * from './Session'
|
||||
// export * from './Team'
|
||||
// export * from './User'
|
||||
// export * from './UserEmail'
|
||||
// export * from './UserTeam'
|
||||
export * from './RoleEntity'
|
||||
export * from './SessionEntity'
|
||||
export * from './TeamEntity'
|
||||
export * from './UserEmailEntity'
|
||||
export * from './UserEntity'
|
||||
export * from './UserTeamEntity'
|
||||
|
||||
@ -1,6 +0,0 @@
|
||||
export * from './RoleEntity'
|
||||
export * from './SessionEntity'
|
||||
export * from './TeamEntity'
|
||||
export * from './UserEmailEntity'
|
||||
export * from './UserEntity'
|
||||
export * from './UserTeamEntity'
|
||||
@ -5,7 +5,8 @@ if (require.main === module) {
|
||||
}
|
||||
export * from './application'
|
||||
export * from './cli'
|
||||
export * from './entity-schemas'
|
||||
export * from './entities'
|
||||
export * from './entities/BaseEntitySchemaPart'
|
||||
export * from './error'
|
||||
export * from './logger'
|
||||
export * from './middleware'
|
||||
|
||||
@ -2,7 +2,7 @@ import { Session } from '@rondo.dev/common'
|
||||
import { TypeORMTransactionManager } from '@rondo.dev/db-typeorm'
|
||||
import ExpressSession from 'express-session'
|
||||
import { UrlWithStringQuery } from 'url'
|
||||
import { SessionEntity } from '../entity-schemas'
|
||||
import { SessionEntity } from '../entities'
|
||||
import { apiLogger } from '../logger'
|
||||
import { DefaultSession } from '../session'
|
||||
import { SessionStore } from '../session/SessionStore'
|
||||
|
||||
@ -3,7 +3,7 @@ import { UserInTeam } from '@rondo.dev/common/lib/team/UserInTeam'
|
||||
import Validator from '@rondo.dev/validator'
|
||||
import { ensureLoggedIn, Context, RPC } from './RPC'
|
||||
import { TypeORMDatabase } from '@rondo.dev/db-typeorm'
|
||||
import { TeamEntity, UserTeamEntity } from '../entity-schemas'
|
||||
import { TeamEntity, UserTeamEntity } from '../entities'
|
||||
|
||||
@ensureLoggedIn
|
||||
export class SQLTeamService implements RPC<TeamService> {
|
||||
|
||||
@ -2,7 +2,7 @@ import { UserService } from '@rondo.dev/common'
|
||||
import { TypeORMDatabase } from '@rondo.dev/db-typeorm'
|
||||
import { hash } from 'bcrypt'
|
||||
import { Context, ensureLoggedIn, RPC } from './RPC'
|
||||
import { UserEntity, UserEmailEntity } from '../entity-schemas'
|
||||
import { UserEntity, UserEmailEntity } from '../entities'
|
||||
|
||||
const SALT_ROUNDS = 10
|
||||
// const MIN_PASSWORD_LENGTH = 10
|
||||
|
||||
@ -4,7 +4,7 @@ import Validator from '@rondo.dev/validator'
|
||||
import { compare, hash } from 'bcrypt'
|
||||
import { validate as validateEmail } from 'email-validator'
|
||||
import createError from 'http-errors'
|
||||
import { UserEntity, UserEmailEntity } from '../entity-schemas'
|
||||
import { UserEntity, UserEmailEntity } from '../entities'
|
||||
|
||||
const SALT_ROUNDS = 10
|
||||
const MIN_PASSWORD_LENGTH = 10
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
import { UserPermissions } from '@rondo.dev/common'
|
||||
import createError from 'http-errors'
|
||||
import { TypeORMDatabase } from '@rondo.dev/db-typeorm'
|
||||
import { UserTeamEntity } from '../entity-schemas'
|
||||
import { UserTeamEntity } from '../entities'
|
||||
|
||||
export class SQLUserPermissions implements UserPermissions {
|
||||
constructor(protected readonly db: TypeORMDatabase) {}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user