mirror of
https://github.com/Chocobozzz/PeerTube.git
synced 2025-02-25 18:55:32 -06:00
Move models to typescript-sequelize
This commit is contained in:
@@ -1,16 +0,0 @@
|
||||
import * as Sequelize from 'sequelize'
|
||||
|
||||
export namespace AvatarMethods {}
|
||||
|
||||
export interface AvatarClass {}
|
||||
|
||||
export interface AvatarAttributes {
|
||||
filename: string
|
||||
}
|
||||
|
||||
export interface AvatarInstance extends AvatarClass, AvatarAttributes, Sequelize.Instance<AvatarAttributes> {
|
||||
createdAt: Date
|
||||
updatedAt: Date
|
||||
}
|
||||
|
||||
export interface AvatarModel extends AvatarClass, Sequelize.Model<AvatarInstance, AvatarAttributes> {}
|
||||
@@ -1,24 +1,17 @@
|
||||
import * as Sequelize from 'sequelize'
|
||||
import { addMethodsToModel } from '../utils'
|
||||
import { AvatarAttributes, AvatarInstance } from './avatar-interface'
|
||||
import { AllowNull, Column, CreatedAt, Model, Table, UpdatedAt } from 'sequelize-typescript'
|
||||
|
||||
let Avatar: Sequelize.Model<AvatarInstance, AvatarAttributes>
|
||||
@Table({
|
||||
tableName: 'avatar'
|
||||
})
|
||||
export class AvatarModel extends Model<AvatarModel> {
|
||||
|
||||
export default function (sequelize: Sequelize.Sequelize, DataTypes: Sequelize.DataTypes) {
|
||||
Avatar = sequelize.define<AvatarInstance, AvatarAttributes>('Avatar',
|
||||
{
|
||||
filename: {
|
||||
type: DataTypes.STRING,
|
||||
allowNull: false
|
||||
}
|
||||
},
|
||||
{}
|
||||
)
|
||||
@AllowNull(false)
|
||||
@Column
|
||||
filename: string
|
||||
|
||||
const classMethods = []
|
||||
addMethodsToModel(Avatar, classMethods)
|
||||
@CreatedAt
|
||||
createdAt: Date
|
||||
|
||||
return Avatar
|
||||
@UpdatedAt
|
||||
updatedAt: Date
|
||||
}
|
||||
|
||||
// ------------------------------ Statics ------------------------------
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
export * from './avatar-interface'
|
||||
Reference in New Issue
Block a user